Ключевым отличием Tomcat с Servlet API <3.1 от серверов, использующих Netty с Spring WebFlux, является способ обработки ввода-вывода и запросов: блокирующий или неблокирующий. <br> Spring WebFlux одобряетВторой подход:
Часть ответа заключается в необходимости неблокирующего веб-стека для обработки параллелизма с небольшим количеством потоков и масштабирования с меньшим количеством аппаратных ресурсов.
Итак, суммируя, что с помощью Spring WebFlux API будет создано гораздо меньше потоков для столько же, сколько клиентских http-запросов, потому что поток не выделен для одного клиентского http-запроса в этой модели.
Отсутствие блокировкиПодход означает, что: независимо от времени обработки запроса, поток, который обрабатывает, не будет блокировать приложение и заставит поток долго ждать, но обработает другой запрос в течение этого времени.
Возьмите этот пример: ваш контроллер Rest или Mvc получает запрос, и основной задачей для выполнения является запрос базы данных.При блокирующем подходе вы создаете один поток по запросу http.При подходе без блокировки поток делегирует базу данных, может обслуживать другие запросы, и этот поток или другой пул продолжат обработку после завершения взаимодействия с базой данных.