More advanced concepts and technical-hands-on for RabbitMQ. OF course, working source code included :
Automatically convert Java objects to / from JSON
Schedule consumers to stop / start at given time
Handle message ordering
New way to write consumer
Consistent hash exchange
Create RabbitMQ structures (queue, exchange, binding) from Java code
Install RabbitMQ using Docker. Works for all operating system!
Use RabbitMQ plugins to extend functionalities
Don't want to install RabbitMQ? Use it on cloud!
Retry mechanism without any code! (direct exchange)
Again, do retry mechanism without writing code! (fanout exchange)
Additional bonus for modern architecture!
Single active consumer
Nowadays, we work with multiple systems and data that runs among them. It's a common thing that one system triggers another system(s) process, or data needs to be transferred among systems. Whether your systems built on monolith or microservice, whatever database you use, you need those data moving from one point to another. And you need those movement FAST to be processed immediately (otherwise your life will be ruined).
That kind of demand is so common, and fortunately today's technology has an answer for that. Say hello to messaging system, where you can send message easily from one system to another system(s) asynchronously, in almost-real-time interval. There are some popular messaging system in the market, and in this course we will be talking about one of the most popular : RabbitMQ.
Rabbit MQ is like central hub where you place all data from source system(s), and the other corresponding systems takes the data, and process it. RabbitMQ is open-source, reliable, and able to works on cluster. It has small learning curve to get started, yet powerful enough for system integrations.
This course includes everything you need to know about basic RabbitMQ, and implementation using Java (Spring Framework). After finishing this course, you should be able to install, configure and use RabbitMQ from Java Program. In this course, we will walk through detailed step-by-step from concept to hands-on Java coding. Given such way, you will learn have the understanding of logic behind and experience how things are done using Rabbit MQ and Java source codes.
Java and Spring Boot
Java itself has been a popular language for years. Java is recognized as world's most used programming language by several programming language index. Due it's popularity and long history, Java has a lot of open source projects or framework to helps developer works more efficient. One of the popular Java framework is Spring Framework. Over years, Spring Framework has grown substantially among Java community. Almost all software components required by a Java application is available within Spring Framework. However, configuring Spring requires some effort. This involves setting up library dependencies, then configuring the required Java Spring beans using XML or annotations in Java code. Spring developers soon realized that it is possible to automate much of this work.
So in 2014, Spring Boot 1.0 released for Java community. Spring Boot gives Java programmers a lot of automatic helpers, and lead to quick large scale adoption of the project by Java developers.
In real-world application, Java with Spring, combined with RabbitMQ, can gives benefit for data transfer among systems. Rabbit MQ itself is popular among Java developers, although RabbitMQ developers provides client for multiple programming language other than Java.
What You Will Get
After finishing the course, you will learn:
Installation of RabbitMQ and Java (In Windows. Currently I don't have Linux/Mac)
RabbitMQ key concepts
Managing RabbitMQ from web user interface
Create publisher and consumer using Java (Spring Boot)
Basic error handler if there is a failure during processing Rabbit MQ message
Retry mechanism on RabbitMQ if there is failure message
Handle message ordering
The course will explains to you not only the theory of Rabbit MQ, but also a lot of hands-on coding to get your hands dirty and your brain working. Whether you are a hobbyist, beginner, or experienced developer, this course will surely brings added value for you!
Road to Microservices
Message broker is one important pillar of microservice architecture. In micro service, we use asynchronous messaging for inter-service communication. Services communicating by exchanging messages over messaging channels like RabbitMQ.
In this course, you will learn the theory and hand-code of messaging with RabbitMQ, and also introduction to REST API, which is another pillar of microservice architecture.