본문 바로가기
Memo/BootCamp : TIL

[Day 114] Spring WebFlux

by 달의 조각 2022. 10. 14.

학습 주제

 

Spring WebFlux
Spring MVC vs Spring WebFlux
Spring WebFlux의 Non-Blocking

 


 

새롭게 배운 내용

 

2022.10.14 - [Back-End/Spring WebFlux] - Spring WebFlux

2022.10.14 - [Back-End/Spring WebFlux] - Spring WebFlux 적용

 

 

보강할 내용

 

  • Spring WebFlux 블로깅 내용 보강, 정리

 

 

회고

 

  Spring 5 버전에 리액티브 스택이 추가되면서 Spring 기반의 리액티브 프로그래밍이 도입되는 추세이다. 여기서 주목받는 기술인 Spring WebFlux에 대해 학습했다. WebFlux라는 이름을 처음 봤을 때 이름에 담긴 의미를 생각해 보지 못했었는데 Web + Flux라는 자체로 기술의 핵심을 정의한 것이었다. Flux는 Project Reactor에서 N개의 데이터를 발행하는 역할을 한다. (다른 타입으로는 0개 혹은 1개의 데이터를 발행하는 Mono가 있다.) WebFlux는 웹 애플리케이션에 대한 반응형 프로그래밍 프레임워크이다.

사실 선언형 프로그래밍 방식이 아직 와닿지 않아서 WebFlux란 기술이 낯설다. 이제 Spring MVC에 익숙해지려는데 새로운 방식의 프로그래밍이라니! Spring MVC 환경에서 여러 시행착오를 거쳐 가며 배워야 진정한 리액티브 프로그래밍의 가치도 깨달을 수 있으리라 생각한다. 오늘 배운 Spring MVC와 WebFlux의 큰 차이는 통신 방식이다. Spring WebFlux는 Non-Blocking 방식이고 Spiring MVC는 Blocking 방식으로 통신한다. 그래서 WebFlux는 MSA(Microsevice Architecture) 기반 애플리케이션에 적합한 방식이다.

'아직은 여기까지만 알고 있어도 충분하지 않을까 😊'라는 생각을 해 보며... 새로운 기술을 알게 되어서 재미있었다.

 

★★★★★

 

댓글