- Spring 5부터 지원하는 Reactive Web Framework
- 비동기 Non-Blocking I/O 방식으로 적은 수의 스레드를 사용한다
- Reactive Streams의 구현체 중의 하나인 Reactor에 의존하여 비동기 로직을 구성하고 리액티브 스트림을 제공한다
- Reactor 기반이지만 RxJava 등 다른 Reactive 확장 라이브러리를 쉽게 적용할 수 있다
- Spring WebFlux 자체의 학습 비용보다 Reactor의 학습 비용이 더 많이 든다
Spring MVC와 Spring WebFlux의 기술 스택

https://spring.io/reactive
Spring MVC와 Spring WebFlux의 밴다이어그램

Spring WebFlux의 Non-Blocking Proccess

Spring WebFlux를 사용하기 적합한 시스템
- Blocking I/O 방식으로 처리하는데에 한계가 있는 대량의 요청 트래픽이 발생하는 시스템
- 마이크로 서비스 기반 시스템
- 스트리밍 시스템 또는 실시간 시스템