Spring WebFlux부터 바로 공부하는 것은 목적에 따라 장점과 단점이 있는 선택입니다.
✅ 비동기/논블로킹 프로그래밍을 주로 사용할 계획이라면
Mono, Flux 같은 리액티브 개념을 익힐 수 있습니다. ✅ 이미 리액티브 프로그래밍(RxJava, Project Reactor 등)에 익숙하다면
✅ Microservices, WebSocket, SSE 같은 실시간 데이터 처리가 필요하다면
❌ 기본적인 Spring MVC 개념 없이 WebFlux를 배우면 어려울 수 있음
Flux, Mono, subscribe(), backpressure)이 필요하여 처음 배우면 난해할 수 있습니다. ❌ 대부분의 실무 프로젝트는 여전히 Spring MVC 기반
❌ JPA, 트랜잭션 등 기존 Spring 기술과의 연계가 어려울 수 있음
✅ @Controller, @RestController, @Service, @Repository 등의 구조 이해
✅ 기본적인 Spring Boot + JPA CRUD API 구현
✅ MVC 패턴과 DispatcherServlet 흐름 익히기
✅ 리액티브 스트림 개념 (Mono, Flux, subscribe()) 익히기
✅ WebFlux + R2DBC 연동을 통해 논블로킹 데이터베이스 접근 학습
✅ WebFlux + WebSocket/SSE 같은 실시간 처리 기술 익히기
Spring MVC를 먼저 배우고 WebFlux로 확장하는 것이 실용적입니다.
특히 실무 프로젝트를 고려하면 MVC → WebFlux 순서로 학습하는 것이 더 좋은 선택일 가능성이 큽니다.
다만, WebFlux가 반드시 필요한 환경에서만 사용할 계획이라면 WebFlux부터 공부하는 것도 가능합니다.
어떤 방식으로 개발할 계획인지에 따라 선택하면 됩니다. 😊