Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/zucchinidev/power-plant-monitoring-system

The fastest distributed system to monitor a power plant
https://github.com/zucchinidev/power-plant-monitoring-system

concurrency distrubuted fanout go golang rabbitmq rabbitmq-consumer rabbitmq-producer

Last synced: about 1 month ago
JSON representation

The fastest distributed system to monitor a power plant

Awesome Lists containing this project

README

        

# Power plant monitoring system

### Main architecture


Main architecture

### Generating data for the sensors


Generating data for the sensors

### Aggregating data for the listeners


Aggregating data for the listeners

### Queue discovery
This is necessary because if the coordinator is down and at this moment a new sensor is turned on,
then the messages sending for this sensor will never be received due to the no reception of the
message published in the fan-out exchange.
Since the coordinator wasn't running at that point, it has no idea to look for messages on the sensor's data queue.
That's the problem we fix with the queue discovery.


Queue discovery