Learn RabbitMQ: Asynchronous Messaging with Java and Spring
What you'll learn
- Learn to build applications with RabbitMQ using Java and Spring!
- Learn and Implement Topics, Queues, Exchanges and Bindings in RabbitMQ
- Learn how to develop message listeners for specific queues and routings
- Learn to design asynchronous, message-driven systems with RabbitMQ!
- Learn and understand Message-Queueing
- Learn and understand Advanced Message-Queueing Protocol or AMQP
- Learn and understand how Advanced Message-Queueing Protocol works
- Learn and understand the architecture of RabbitMQ
- Working knowledge of Java, Spring preferred
- Any Java IDE (Intellij preferred)
- "RabbitMQ is the most widely deployed open source message broker." - Pivotal Software, 2018
Join me in this course to learn ins and outs of RabbitMQ!
If you want to learn RabbitMQ and how to develop with it using Java and Spring AMQP, this is the only course you need!
From Exchanges to Queues, Bindings to Message Listeners, we'll start by learning the pillars, corner stones of RabbitMQ and build on top of them with practical development for all these concepts using Java and Spring!
I will walk you through the starting from scratch, the messaging itself! We'll discover what messaging means and how it affects our architectural decisions and design considerations. Next up is the AMQP, Advanced Message Queueing Protocol. We'll discover the benefits and reasons behind the popularity of AMQP and how it shaped the architecture of RabbitMQ from messaging concepts to client platforms making use of it.
While discovering the advantages of AMQP, we'll then start discovering RabbitMQ and its architecture. We'll learn Queues, Exchanges, Bindings, Routings, Publishers, Subscribers and much more about RabbitMQ!
After meeting with RabbitMQ through the concepts that it puts on the table, we'll start preparing our environment for running RabbitMQ and developing applications using it. We'll install all the necessary software for RabbitMQ and have it up and running on our machines both on Windows and MacOS.
When we finish preparing our environment for RabbitMQ, we'll start discovering by RabbitMQ Management Dashboard. We'll see and learn how RabbitMQ Dashboard helps us easily monitor and manage our RabbitMQ server. We will then send our first ever message to RabbitMQ! After sending our message, we'll learn how to create Queues, Exchanges and Bindings between them.
Now it's time to start developing for RabbitMQ! We'll learn everything we need to develop software using RabbitMQ starting with RabbitTemplate. RabbitTemplate helps us publish messages to RabbitMQ really easy and we'll learn to use it by examples. From simple text messages to actual objects, we'll learn to send any kind of messages.
We'll then deepen our knowledge by developing actual Queues, Exchanges and Binding with Java and Spring! We'll learn how to construct Queues, Exchanges, Bindings with Spring AMQP using both Annotations and Builder methods. We're not going to finish it there and we'll develop a message listener for specific queue that we also created programmatically. We'll both publish and listen to messages so we'll developing a complete application from scratch just like we should in our professional applications!
Until this point, you'll practically gain all the knowledge you need to develop applications with RabbitMQ. But we'll not stop there and also think of an asynchronous messaging pipeline scenario where we send messages from one application and receive from another one. If you're beginning to work with RabbitMQ or if you need to realize an asynchronous scenario for your next design, this part is especially valuable to you and you should definitely learn how to do this!
Below are some of the key metrics for RabbitMQ; if you're still hesitant to take this course, please read these carefully:
- RabbitMQ is the most widely deployed open source message broker or messaging middleware in other terms.
- With more than 35,000 production deployments of RabbitMQ world-wide at small startups and large enterprises, RabbitMQ is the most popular open source message broker.
- RabbitMQ is lightweight and easy to deploy on premises and in the cloud. It supports multiple messaging protocols. RabbitMQ can be deployed in distributed and federated configurations to meet high-scale, high-availability requirements.
- RabbitMQ runs on many operating systems and cloud environments, and provides a wide range of developer tools for most popular languages.
I hope I'll be seeing you in the course to teach you everything you need to develop applications with RabbitMQ! I guarantee that you'll learn a lot from this course but please remember that you can always refund it within 30 days so take it and see for yourself!
Who this course is for:
- Anyone who wants to learn RabbitMQ inside-out!
- Anyone who wants to learn Publishing and Subscribing to messages with RabbitMQ
- Anyone who wants to build and design asynchronous, loosely-coupled systems with Java and Spring
- Anyone who is interested in asynchronous systems with message exchanges
- Anyone who wants to learn Message-Queueing
- Anyone who wants to learn Advanced Message-Queueing Protocol or AMQP
Hi, I'm Niyazi Erdoğan. I'm a software engineer and AWS Certified Solutions Architect with over ten years of experience in various fields. I'm living in one of the most beautiful cities in the world, Istanbul.
I'm a self-taught programmer and I've been programming since I was in middle-school. My experience ranges from embedded development to server-side and client-side development technologies.
I started my career while I was only a student as a Java Developer in healthcare industry as a private contractor. Then I moved in to the largest telecommunication company of Turkey which is Turkcell. After several years and various different positions at Turkcell, I moved in to Portugal and worked for another large telecommunication company for several years with Java technologies.
After the telecommunication industry experience and several different experiences, I joined one of the largest companies of its sectors which is Siemens. I currently works at Siemens working with various Java and Cloud technologies
Besides my day job, I really enjoy developing software with lots of different technologies.On the other hand, I do love to follow tech conferences and blogs about latest technologies and tools. I also like to read books within or without my field of expertise and love to watch series like Westworld and Game of Thrones. And I make sure that I stay healthy with daily walking, running and workout.