The Spring Reactive framework is based on the Reactor project along with which it also supports the RxJava library to implement functional Reactive Programming. Spring 5 is based upon the dependencies of Project Reactor 3.x. The Spring Framework 5 incorporates Reactive Streams, which has the contract for communicating among the asynchronous components between the components and the libraries along with a good support for backpressure. The collaboration made between the APIs of Project Reactor, Spring, and ReactiveX is shown in the following figure:
Let's look at each of these components one by one:
- ADDONS: The component ADDONS adds the support for RxJava1 and RxJava2. It enables the developers to use the reactive types such as Observable, Flowable, Single, and Scheduler which we have already used in earlier chapters while discussing RxJava2...