Back to blog

Message Queues & Event Streaming

### Synchronous vs Asynchronous

When Microservice A calls Microservice B via HTTP, it is synchronous. If B fails or is slow, A suffers. Message Queues introduce asynchronous decoupling.

### How Queues Work

A producer sends a message to the queue. A consumer reads it at its own pace. This acts as a massive shock-absorber during traffic spikes. If the consumer goes down, messages safely accumulate in the queue until it comes back online.

### RabbitMQ vs Kafka

- **RabbitMQ:** A traditional message broker offering complex routing logic and point-to-point delivery. Once consumed, the message is deleted. - **Apache Kafka:** A distributed event streaming platform. Messages are appended to an immutable log. Multiple consumers can read the same stream, and messages persist for a configured retention period.

Message Queues & Event Streaming - Image 1
Message Queues & Event Streaming - Image 2