Chapter 7. Mutiny: An Event-Driven Reactive Programming API
In Chapter 5, we introduced reactive programming and how it helps implement reactive applications. Then, in Chapter 6, we discussed how Quarkus uses Mutiny to allow implementing reactive applications. This chapter focuses on Mutiny itself.1
This chapter presents Mutiny’s concepts and common patterns, which will help you understand the next few chapters. Mutiny is the API used for every reactive-related feature from Quarkus. You will see a lot more of it when delving into the construction of reactive applications and systems with Quarkus.
Why Another Reactive Programming Library?
That’s a great question! As you have seen in Chapter 5, other popular reactive programming libraries exist. So why another one?
In the past few years, we’ve observed how developers developed reactive systems and used reactive programming libraries. Through this experience, we observed the challenges faced by the developers. In a nutshell, reactive programming is hard to learn and hard to read. Writing and maintaining reactive code creates a significant burden, slowing the adoption of reactive approaches.
When we look at reactive programming usage, we immediately see a steep learning curve, which makes reactive programming limited to top-notch developers. Indeed, the functional programming roots of reactive programming are both elegant and limiting at the same time. Not every developer has a functional background. We have seen developers lost ...