概要
SpringBoot を使っているときに、DB周りのチューニングが必要になり、
その時に行った設定についてのメモ。
コネクションプールはデフォルトのまま HikariCP を利用。
環境
- SpringBoot:2.1.3.RELEASE
- Oracle Database 12c
詳細
application.ymlの記述内容を以下のように変更する。
今回変更した内容は、コネクションタイムアウトまでの時間とプールサイズの変更。
spring.datasource.hikari
以下の部分が対象箇所。
application.yml
spring:
datasource:
url: 【DB接続先URL】
username: 【DB接続スキーマ】
password: 【DB接続パスワード】
driverClassName: oracle.jdbc.OracleDriver
testOnBorrow: true
validationQuery: SELECT 1 FROM DUAL
type: com.zaxxer.hikari.HikariDataSource
hikari:
connection-timeout: 60000 # Default: 30000 (30 seconds)
connection-test-query: SELECT 1 FROM DUAL
minimum-idle: 50 # Default: same as maximumPoolSize
maximum-pool-size: 500 # Default: 10
まとめ
調べるとすぐ出てくるけど、意外と知らない内容だった。
もっと細かい設定をしたい場合は、以下のリンク先の情報が参考になる。
https://github.com/tokuhirom/java-handbook/blob/master/spring/hikaricp.md