토스에서 제공하는 기술 블로그를 통해서 어떤 사고 과정을 거쳐서 문제를 해결하는지 권위자들의 시야를 엿볼 수 있어서 훔쳐보고(?) 커비처럼 빨아먹어야 한다. 클러스터 안에는 수많은 서버들이 Spring WebClient를 통해 REST API로 통신해서 요청을 처리한다.1. Spring Cloud Gateway의 Memory Leak 이슈 파악하기해당 컨테이너에 지정한 메모리 상한을 사용한 총 메모리가 초과한 경우 OOMKilled 알림을 보낸다. 그런데 Gateway가 왜 OOM으로 죽어? Gateway의 OOM 문제를 트러블 슈팅하는 과정으로 JVM 튜닝에 대한 이야기부터 시작한다. 토스에서는 메모리 할당에 드는 오버헤드를 줄이기 위해서 -XX:+AlwaysPreTouch JVM 옵션을 사용해서..