0. 들어가며


Spring Boot 환경에서 기본 커넥션 풀로 널리 사용되는 HikariCP 설정 중 몇 개에 대해 공부한 내용을 정리한다.

1. HikariCP


JDBC로 직접 DB Connection을 열고 닫는 작업은 비용이 큰 I/O 연산이다. 매번 커넥션을 새로 생성하면 애플리케이션 응답 시간이 늘어나고, DB 서버에 불필요한 부하가 걸릴 수 있다. 이를 해결하기 위해 등장한 개념이 바로 커넥션 풀(Connection Pool)이다. 커넥션 풀은 사용했던 커넥션을 재사용함으로써, 커넥션 생성과 해제에 소요되는 오버헤드를 줄여준다.

1.1 HikariCP란?

HikariCP는 경량화와 고성능을 목표로 탄생한 커넥션 풀 라이브러리이다.

image.png

1.2 커넥션 풀의 두 가지 라이프 사이클

1) 빌려간 상태 : Checkout (In-Use)