Distributed & scalable generic notification(cum cronjob) engine implementation in Golang. Architecture and implementation is inspired from BigBen by Walmart labs.
- Docker
Start a sample 3-node manager and single-node worker system using following command -
make start
- PostgresDB as data store
- Etcd v3 for cluster synchronization
- Rabbitmq for job queues
- Manager Service(s) : Master-slave cluster of a manager to pick up scheduled job from data store and push to worker queue.
- Worker Service(s) : Idempotent worker for picking jobs from worker queue and executing them.