“N+1 쿼리” 태그의 포스트
(2개)Kotlin JDSL 마이그레이션과 Fetch Join을 통한 N+1 문제 해결
Native Query를 Kotlin JDSL로 마이그레이션하면서 확장 함수 패턴을 도입했습니다. 일반 join을 fetchJoin으로 변경하여 N+1 쿼리 문제를 해결하고, 데이터베이스 레벨에서 직접 집계 연산을 수행하여 쿼리 성능을 개선했습니다. Kotlin JDSL의 타입 안전성과 확장 함수 패턴을 활용하여 유지보수성을 크게 향상시켰습니다.
2026. 2. 2.
읽기 →Kotlin JDSL
JPA
N+1 쿼리
Fetch Join
성능 최적화
Spring Boot
Kotlin
확장 함수
N+1 쿼리 최적화와 Connection Pool 튜닝으로 해결한 Connection Timeout 문제
HikariCP 대시보드에서 Connection Timeout이 27회 발생하는 문제를 발견했습니다. 원인은 N+1 쿼리 문제와 작은 Connection Pool 크기였습니다. 배치 조회로 N+1 쿼리를 해결하고 Connection Pool 크기를 5에서 20으로 증가시켜 Timeout을 0으로 만들었습니다. 쿼리 수는 161개에서 3개로 98% 감소했습니다.
2026. 2. 1.
읽기 →N+1 쿼리
Connection Pool
HikariCP
성능 최적화
Spring Boot
Kotlin
JPA
배치 조회