3 ms·
Kafka events are replayable, and represent the final state we're aiming for. You might have two exactly the same events that tell you how the state should look
by RomanPushkin 3y ago
Kafka events are replayable, and represent the final state we're aiming for. You might have two exactly the same events that tell you how the state should look like. And there are batches of events. It's good for batch processing - "we're getting new portion of data to train AI model".
RabbitMQ messages are supposed to be processed/consumed/acked only once. Your app most probably won't ever get two exactly the same messages, unless you misconfigured/misued RabbitMQ. It's good for classic message processing - "used clicked something, run the job of informing subscribers that new post has been created" (because you can't send 1000 messages from a web worker thread).
- bikezen 3y agoThis hasnt been true for awhile, RabbitMQ added streams back in 2021.