DevBoi

[Spring] WebClient 본문

Develop/[Spring]

[Spring] WebClient

HiSmith 2022. 3. 30. 16:20
반응형

WebClient는 RestTamplate과 차이가있다.

공통점은 둘다 HttpClient의 모듈이다

차이점은 RestTemplate과 달리, WebClient는 Non-blocking방식이다.

 

해당 방식이 필요한 이유는 네트워킹의 병목현상을 줄이고 성능을 향상 시키기 위해서이다.

 

Core당 1개의 쓰레드를 이용합니다.

각 요청은 이벤트 루프 내 job으로 등록이됩니다.

이벤트 루프는 각 Job을 제공자에게 요청하고, 결과를 기다리지 않고 다른 Job을 처리한다.

제공자로부터 이벤트 루프로 콜백으로 응답이 오면, 결과를 요청자에게 제공한다.

WebClient는 이벤트에 반응형으로 동작하도록 설계 되었다.

 

동시 접속자가 많으면, RestTemplate보다 뛰어난 성능을 가지며

Spring 커뮤니티에서는 RestTemplate을 Depreciated시켰다. WebClient를 권고한다.

 

WebClient는 리액티브에서 많이 사용하고, 사용 예제는 따로 공부해보자

 

 

동작방식

 

반응형

'Develop > [Spring]' 카테고리의 다른 글

[Spring] ModelAttribute  (0) 2022.04.28
[Spring] 웹 통신 , 스프링 동작 과정  (0) 2022.04.08
[Spring] RestTemplate  (0) 2022.03.29
[Spring] Dao와 repository 차이  (0) 2022.03.28
[Spring] Hikari란  (0) 2022.03.28