RabbitMQ Messaging With Java (Spring Boot) From Zero To Hero

AMQP, Queue, Exchange, Highly Availability, Clustering, Shovel, Federation, Binding, Asynchronous Messaging, Fanout

Hi there,

What you’ll learn

  • Asynchronous Messaging with RabbitMQ.
  • RabbitMQ vs AMQP.
  • AmqpTemplate and RabbitTemplate in Spring Boot.
  • Create an application in Spring Boot from zero.
  • Learn RabbitMQ from zero to hero.
  • RabbitMQ Exchange Types: Default, Direct, Topic, Fanout, Header.
  • Message Post Processing.
  • Exception Handling, Retry Mechanism.

Course Content

  • Introduction –> 4 lectures • 13min.
  • Setting Up Development Environment –> 4 lectures • 9min.
  • Overview for Basic Frameworks and Tools –> 4 lectures • 19min.
  • Restful Web Services – Overview –> 3 lectures • 5min.
  • Create Spring Boot Project With RabbitMQ Environment –> 5 lectures • 16min.
  • 1. Exchange Type – Default Exchange –> 2 lectures • 16min.
  • 2. Exchange Type – Direct Exchange –> 2 lectures • 15min.
  • 3. Exchange Type – Fanout Exchange –> 2 lectures • 12min.
  • 4. Exchange Type – Topic Exchange –> 2 lectures • 16min.
  • 5. Exchange Type – Header Exchange –> 2 lectures • 18min.
  • Consumer –> 3 lectures • 12min.
  • Exception Handling in RabbitMQ –> 2 lectures • 16min.
  • Queue Arguments –> 10 lectures • 1hr 7min.
  • Admin Operations, Plugins –> 3 lectures • 21min.
  • Clustering with Docker –> 6 lectures • 25min.

RabbitMQ Messaging With Java (Spring Boot) From Zero To Hero


  • Only a computer and basic java knowledge.

Hi there,

In this course, we will learn every details of RabbitMQ from A to Z. To learn it, we will use Spring Boot project. First of all, we will start with meaning of it so we will start with basic things. And we will go on step by step with its details…  Maybe the most important thing about this course, we will learn some practical features of RabbitMQ like Highly Availability, Policies that you couldn’t find enough resource on internet…

Here is the some basic topics in this course that will be learned:

  1. Queue
  2. Exchange
  3. Binding
  4. Producer
  5. Consumer
  6. Routing Key
  7. Policies
  8. Federation Upstream
  9. Clustering With Docker
  10. Queue Arguments/Features
  11. Highly Availability
  12. Exception Handling
  13. Retry Mechanism
  14. Max Priority
  15. Mirroring
  16. AMQP Default
  17. Virtual Host
  18. Connection vs Channel

In this course, we will work with multiple nodes via Docker. So we will also learn basic Docker commands about RabbitMQ.

Why do we need RabbitMQ?

– Messaging queue… We will see the details of it.

Should we choose rabbitmq over apache-kafka?

– It depends… We will see the details of it.

Is Spring-Boot the right framework to work with rabbitmq? Do we really need it?

– Absolutely. It provides many functionalists and flexibility…

Are there disadvantages of rabbitmq over apache-kafka?

– It depends… We will see the details of it.


To implement all rabbitmq steps, we will create a spring boot project. Our project will include model view controller structure. Of course, one of our aim is to create readable projects at the end of the day.