we are currently setting up a distributed event bus, using cloudamqp(rabbitmq) and the basics seem to work fine.
But we have multiple apps that should retrieve the events, and i was wondering how to make sure that all listeners receive the message.
If one component is down for maintenance, or unexpected causes we want it to continue processing where it left off, instead of having missed a couple of events. What would be the best way to do this?
I could come up with having a queue per component, or using a kafka like system in which the client saves the state where it left off, but i’m no expert on amqp, and don’t know if there is a normal pattern to solve this problem.
So if someone has a tip, please let me know.