Spring Reactive and Spring Cloud Stream
A different approach to applications may be necessary in high concurrency scenarios, with resource-intensive operations such as Input/Output (I/O)-bounded tasks that require low latency and responsiveness. In this chapter, we’ll learn about two Spring Boot projects that address such a scenario.
Spring Reactive is Spring’s response to reactive processing scenarios. Reactive processing is a paradigm that allows developers to build non-blocking, asynchronous applications that can handle backpressure. Non-blocking means that when an application waits for an external resource to respond, for instance, when calling an external web service or database, the application doesn’t block the processing thread. Instead, it reuses the processing threads to handle new requests. Backpressure is a mechanism for handling situations where a downstream component cannot keep up with the rate of data production from an upstream component. For...