Hikari 옵션
-
프로젝트 진행 중 connection pool 문제가 발생했는데 옵션에 대하여 정확히 인지하지 못하여 정리해본다.
-
시간은 ms 기준이다.
- autoCommit : auto commit 설정 (default: true) connection이 종료되거나 pool에 반환될 때 connection에 속해있는 transaction을 commit할지 말지 결정
- readOnly: readOnly 모드로 open할지 여부 결정 (default: false)
- connectionTimeout: connection 연결 시도 시 timeout 값을 설정. 해당 시간 내에 연결 실패 시 SQL Exception이 발생
- idleTimeout connection pool에 의해 확보된 connection maximum idle time값 결정 minimumIdle이 maximumPoolSize보다 작을 경우에만 적용된다. pool에서 사용되지 않은 connection을 유지하는 시간 pool에서 유지하는 최소 커넥션은 minimumIdle의 값 최소값은 10초이며 default는 10분 0으로 세팅 시 반환하지 않음
- keepaliveTime DB나 네트워크 인프라에 의해 connection이 끊어지는 것을 방지하기 위한 설정으로 HikariCP가 연결을 시도하는 주기 maxLifetime보다 작아야함
- maxLifetime CP에 살아있을 수 있는 커넥션의 최대 수명시간. 이 시간 이상되면 최근에 사용했던 커넥션일지라도 반환되며, 사용중인 커넥션은 반환하지 않음 풀 내에서 커넥션이 대량으로 제거되는 것을 방지하기 위하여 커넥션별로 적용됨 DB나 인프라에서 지정한 connection 시간보다 짧아야함 최소값은 30초이고, default는 30분이다. 0으로 설정하면 수명이 무한
- minimumIdle 커넥션이 놀고 있더라도 유지하는 최소 커넥션 수
-
maximumPoolSize pool에 유지되는 최대 커넥션 수
댓글남기기