Skip to content

A9-dev/distributed-notifications

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Distributed Notification System

This project was for me to learn about RabbitMQ, in here there is a notification-event-emitter and currently just single text-notification handler.

Usage

Run docker compose up --build to see the messages in action. Inside the messages are hostnames to track what message came from what process.

Project Structure

compose.yml

Creates 4 instances of the notification-event-emitter and 4 of the text-notification handler.

/notification-event-emitter

This is the process that produces the events and pushes them to RabbitMQ, it randomly generates strings to emit for eternity (or until you stop it).

/text-notification

This is a handler that consumes messages, doesn't have any particularly interesting logic after consuming a message.

RabbitMQ

The RabbitMQ server has a notifications queue with durable=True meaning the state of the queue is persisted if the RabbitMQ server stops and restarted. Also, the consumers have prefetch_count=1 meaning RabbitMQ will not give a consumer more than one message at a time.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published