매일 매일, 차곡 차곡 쌓기



완벽하지 않은 것을 두려워 말며,
완성도를 높히는데 집중하자.

Spring/WebClient 13

[WebClient] Configuration MaxInMemorySize

MaxInMemorySize 설정 Codecs는 어플리케이션 메모리 문제를 피하기 위해 메모링레서 데이터를 버퍼링하는데 제한이 있다. 기본적으로 이 값은 256KB로 설정되는데, 이 값이 충분하지 않으면 다음과 같은 오류가 발생한다. org.springframework.core.io.buffer.DataBufferLimitException: Exceeded limit on max bytes to buffer 기본 Codecs의 한계는 다음과 같이 변경한다. WebClient webClient = WebClient.builder() .codecs(configurer -> configurer.defaultCodecs().maxInMemorySize(2 * 1024 * 1024)) .build(); Codec..

Spring/WebClient 2024.03.28

[WebClient] Configuration Default

기본적인 사용방법 WebClient를 사용하는 가장 간단한 방법은 정적 팩토리 메서드를 사용하여 WebClient를 생성하는 것 WebClient.create() WebClient.create(String baseUrl) WebClient.builder()를 통해 추가적인 옵션을 설정할 수 있으며, 옵션은 다음과 같다. uriBuilderFactory: 기본 URL로 사용할 사용자 정의 UriBuilderFactory. defaultUriVariables: URI 템플릿 확장 시 사용할 기본 값. defaultHeader: 모든 요청에 대한 헤더. defaultCookie: 모든 요청에 대한 쿠키. defaultRequest: 모든 요청을 사용자 정의하는 Consumer. filter: 모든 요청에 대한..

Spring/WebClient 2024.03.28

[WebClient] WebClient 란?

WebClient 란? Spring5 부터 도입된 웹 클라이언트 라이브러리 내부적으로 HTTP 클라이언트 라이브러리에게 HTTP Request를 위임하며, 기본 HTTP 클라이언트 라이브러리는 Reactor Netty Non-blokcing/Blocking HTTP Request를 모두 지원하기 때문에 RestTemplate 대체 가능 왜 WebClient를 배워야 하나? 1. WebClient의 장점 비동기/Non-Blocking 방식을 지원하여 높은 처리량과 확장성을 가짐 리액티브 프로그래밍으로 데이터 스트림을 효과적으로 처리 할 수 있음 선언적 방식으로 API 호출을 정의하므로 가독성이 좋음 2. WebClient의 단점 웹플럭스 학습곡선이 존재한다. WebClient 공식 가이드 공식가이드를 먼저..

Spring/WebClient 2024.03.27