intermediate~3h
Event-Driven Messaging with RabbitMQ
Kafka isn't the only message broker worth knowing. RabbitMQ's AMQP model — exchanges, queues, bindings, routing keys — solves a different shape of problem, and this module covers that model plus when reaching for RabbitMQ over Kafka is the better engineering call.
Learning objectives
- Beginner: Name the four AMQP building blocks (exchange, queue, binding, routing key) and describe the role each plays.
- Beginner: Distinguish a direct exchange from a topic exchange from a fanout exchange.
- Intermediate: Implement a Spring AMQP producer and consumer that exchange messages through a topic exchange.
- Intermediate: Configure a dead-letter queue so a message that repeatedly fails processing doesn't block the queue forever.
- Advanced: Decide, for a given workload, whether RabbitMQ or Kafka is the better fit, and justify the choice on throughput, ordering, and routing-complexity grounds.
- Advanced: Explain how RabbitMQ's per-message acknowledgment model differs from Kafka's offset-based consumption.
This is a Pro chapter
Sign in, then upgrade to Pro or Power to unlock this and the full Spring Ecosystem Mastery library.
Event-Driven Messaging with RabbitMQ