9 Quarkus messaging
This chapter covers
- Learning about MicroProfile Reactive Messaging
- Defining Reactive systems
- Utilizing reactive messaging in Quarkus
- Exploring Kafka and RabbitMQ broker integrations in Quarkus
- Reactive messaging in car rental
In the previous chapter, we learned what reactive programming is and why it can benefit user applications. We evaluated reactive programming as a great alternative for applications that have a high resources demand, because they can effectively scale to higher numbers of concurrent requests. But in microservices, where the application consists of many isolated service applications, we also often need a way to let the applications communicate asynchronously without blocking threads while we wait for responses and without coupling the applications together too closely. This is where Quarkus messaging comes in.
In this chapter, we learn about the MicroProfile Reactive Messaging specification that was created with the intent to propagate asynchronous messages between services. This standard provides a simple, unified API that we will also utilize in a newly created Billing service in our car rental application.