GitHunt
ME

mehul-m-prajapati/gsoc-queue-interface

Develop a Redis based queue interface which could be an alternative to the disk queue.

GSoC 2018: Queue interface

Hex

General Info

Project Abstract

The syslog-ng has a queue for destinations, that has a current implementation as disk queue. The aim of this project is to develop a Redis based queue interface which could be an alternative to the disk queue.
Redis is an open source in-memory data structure store, used as a database, cache and message broker.

Blog Posts:

Design Diagram

 --------                    ----------------                    -------------
| Source | ================ | syslog-ng core | ================ | Destination | 
 --------                    ----------------          ||        -------------
                                                       ||
                                                       ||
                                                       ||
                                                 ---------------      
                                                |  redis queue  |
                                                |    plugin     |
                                                 ---------------

Commits / Tasks

  • host address
  • port
  • auth
  • key name prefix
  • conn-timeout

To Do (In Future)

  • Develop functional test cases in python
  • Implement reliable and non-reliable redis queue
  • Limit number of messages that can be stored in redis (i.e. using overflow queue)
  • Redis as a cluster
  • Merge rqtool and dqtool functionalities and develop qtool
mehul-m-prajapati/gsoc-queue-interface | GitHunt