Spring Web Reactive | 1. Spring WebFlux
Version 5.3.5
This document describes support for reactive-stack web applications built on the Reactive Streams API and running on non-blocking servers such as Netty, Undertow, and Servlet 3.1+ containers. Each chapter explains the Spring WebFlux framework, the reactive WebClient, test support, and reactive libraries. For servlet-stack web applications, see Web on Servlet Stack.
1. Spring WebFlux
Spring Web MVC, the original web framework included in Spring Framework, was built specifically for the Servlet API and servlet containers. Spring WebFlux, a reactive-stack web framework, was added later in version 5.0. It is fully non-blocking, supports Reactive Streams back pressure, and runs on servers such as Netty, Undertow, and Servlet 3.1+ containers.
The two web frameworks mirror the names of their source modules, spring-webmvc and spring-webflux, and coexist in Spring Framework. Each module is optional. Applications can use either module, or in some cases both, such as including the reactive WebClient in a Spring MVC controller.