In this chapter, the reader will be introduced to the Reactive Manifesto and the world of reactive programming. We start with defining and discussing the main related concepts – asynchronous, non-blocking, and responsive. Using them, we then define and discuss reactive programming, the main reactive frameworks, and talk about RxJava in more detail.
The following topics will be covered in this chapter:
- Asynchronous processing
- Non-blocking API
- Reactive – responsive, resilient, elastic, message-driven
- Reactive streams
- RxJava