[스프링 웹플럭스] 1.1 소개
1.1 소개
기존의 스프링 웹 MVC는 서블릿 API와 서블릿 컨테이너 기반으로 작성했지만 리액티브 스택의 웹 프레임워크에 해당하는 스프링 웹플럭스는 버전 5 후반에 추가했다. 완전히 논-블럭킹이며 리액티브 스트림의 백 프레셔를 지원하고 네티, 언더토우 그리고 서블릿 3.1+ 컨테이너에서 사용할 수 있다.
두 소스 모델은 spring-webmvc와 spring-webflux에 동시에 나란히 스프링 프레임워크안에 존재한다. 각 모듈은 필수가 아니다. 애플리케이션은 둘 중 하나를 사용하거나, 혹은 둘 다 사용할 수도 있다. 가령, 스프링 MVC 컨트롤러를 리액티브 WebClient랑 같이 사용할 수 있다.
웹 프레임워크에 더해 스프링 웹플러스는 HTTP 요청을 수행할 WebClient를 제공한다. 웹 엔드포인트 테스팅 용으로 WebTestClient도 제공하며 웹소켓용 리액티브 클라이언트와 서버도 제공한다.