[Spring] 실서비스에서 JPA 성능 최적화하기
Server/Spring·2025. 11. 12.
최근 신입사원을 위한 온보딩 서비스 WELKIT 프로젝트를 출시했고, 실제 트래픽이 조금씩 발생하고 있다. 아직 사용자가 많거나 수익이 발생하는 단계도 아니지만 서비스를 공개해 사용자가 직접 접속하고 경험할 수 있는 환경을 운영하며 실서비스 경험을 쌓으려고 노력중이다. 버전 1.0을 출시하면서 가장 먼저 신경 쓴 것은 JPA 성능 최적화였다. 단발성 프로젝트에서는 이런 작업을 해볼 기회가 많지 않았지만 실제 사용자가 있는 환경을 가정했을 때 가장 중요하게 고려해야 하는 부분은 결국 최적화라는 것을 느꼈다. 사실 이런 부분은 출시 이전에 점검했어야 했지만, Hibernate가 찍어주는 로그를 꼼꼼히 확인하지 않았던 것 같다. 그 결과 특정 로직에서 N+1 문제가 발생해 불필요하게 쿼리가 반복적으로 실행되고..