The flow control problem

On the one hand, the preceding explanation may have taught us that the central reason to embrace the PUSH model was the optimization of the overall processing time by decreasing the amount of asking to the very minimum. That is why the RxJava 1.x and similar libraries were designed for pushing data, and that is why streaming became a valuable technique for communication between components within a distributed system.

On the other hand, in combination with only the PUSH model, that technique has its limitations. As we might remember from Chapter 1Why Reactive Spring?, the nature of message-driven communication assumes that as a response to the request, the service may receive an asynchronous, potentially infinite stream of messages. That is the tricky part because if a producer disrespects the consumer's throughput possibility it may affect the overall system stability in ways described in the following two sections.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.190.217.253