Closed h1alexbel closed 8 months ago
this issue was decomposed into #128, lets use Rabbitmq for it, its a robust message broker, we probably gonna use its point-to-point delivery system. Other option would be Redis queuing.
and this from AWS guide:
Message persistence RabbitMQ supports persistent messages and transient messages. When it sends messages to the persistent queue, it writes data to permanent storage as soon as it arrives. RabbitMQ also writes transient messages to the disk, but only if they exceed the memory’s capacity.
On the other hand, Redis does not support persistent messages by default. Developers must enable a feature called Redis Database (RDB) to take periodic snapshots of the RAM and store them on disk. Enabling data persistence on Redis adds overhead to data operations, which slows down message delivery. Another alternative is to use recovery techniques like asynchronous replication.
lets stick to RabbitMQ
We should not process messages tracehub bot receives, instead we should push message in the queue, and consumer of this message will process event later by polling it