티스토리 뷰
RestTemplate으로 대용량 파일 전송시 OOM(Out Of Memory)가 발생 할 수 있다.
RestTemplate 소스를 열어보면 상단 캡처처럼 setBufferRequestBody를 false로 세팅 후 사용을 권장하고있다.
RestTemplate가 내부적으로 버퍼를 사용하게 되는데 이 옵션을 꺼주는것이다.
실제 테스트를 진행해보자.
테스트 결과
실제로 확인해보기위해 750MB Dummy file을 생성한 후 테스트를 진행했다.
결과는 다음과 같다.
- 첫번째 동그라미 : setBufferRequestBody(true)
- 두번째 동그라미 : setBufferRequestBody(false)
댓글