논블로킹

Spring

[Spring] WebClient 적용기

WebClient 란? API를 호출하기 위해 사용되는 Http Client 모듈 중 하나 왜 WebClient 가 필요한가? 현재 Java에서 가장 많이 사용하는 Http Client는 RestTemplate 입니다. 그런데 Spring 5.0 버전부터는 RestTemplate 은 유지 관리 모드로 변경되었습니다. Spring 에서는 RestTemplate 의 대안으로 WebClient 사용을 강력히 권고하고 있습니다. WebClient 는 논블로킹/블로킹 모두 지원합니다. 동작 원리 WebClient 의 동작 원리를 알려면 먼저, RestTemplate 의 동작 원리를 알아야 합니다. RestTemplate Multi-Thread, Blocking 요청 Thread Pool은 애플리케이션 구동 시에 ..

ComputerScience

[OS] 블럭/논블럭 (feat. 동기/비동기)

블럭과 논블럭? 주로 동기와 비동기 와 함께 많이 소개 되는데요,, 이번에 WebClient 를 공부하면서 처음 들어보았습니다. 저는 처음 개념을 접했을 때 동기-블럭, 비동기-논블럭 으로 이해했는데 오산이었습니다. 이번 정리를 통해 앞으로 혼용하는 일을 방지하고자 합니다. 블럭과 논블럭의 차이를 정확히 이해하려면 동기와 비동기를 알고 있어야 합니다. 이 포스팅은 동기와 비동기의 차이를 알고 있다는 전제하여 작성합니다. 블럭 & 논블럭 / 동기 & 비동기 블럭과 논블럭을 구분하는 가장 중요한 핵심은 함수 제어권의 위치 입니다. 예를 들어 함수 실행 순서가 A→B 인 로직이 있습니다. 블럭은 A함수를 호출하고 모든 행위를 마칠 때까지 기다렸다 종료되면 B함수를 호출합니다. 논블럭은 A함수를 호출하고 A함수..

leeggmin
'논블로킹' 태그의 글 목록