問題
2023-03-22 09:44:03.404 WARN 10900 --- [datasource housekeeper] com.zaxxer.hikari.pool.HikariPool : datasource - Thread starvation or clock leap detected (housekeeper delta=10m28s381ms837µs874ns).
翻訳:
データソース - スレッド スタベーションまたはクロック リープが検出されました (ハウスキーパー delta=10m28s381ms837µs874ns)
分析
接続の待機時間が長すぎてプロセスが枯渇したことが検出されたか、
または、クロック ビートが検出されたにもかかわらずデータベース接続が最終的に閉じられたことが検出されました。
HouseKeeper は、30 秒間隔の検出タスクです。
接続が削除されるいくつかの状況を見てみましょう。
- 時計を巻き戻し、接続を追放します; (ここではケースと組み合わせる必要があります)
- アイドルタイムアウト時間を超えたアイドル状態の接続を削除します
答え
カスタムhikari配置、次のパラメータを設定します。
datasource:
type: com.zaxxer.hikari.HikariDataSource
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://${ip}:3306/${mydb}?useSSL=false&characterEncoding=UTF-8
username: ${username}
password: ${password}
hikari:
auto-commit: true
#アイドル接続タイムアウト
idle-timeout: 60000
#接続タイムアウト
connection-timeout: 60000
#最大ライフサイクル、0 は無期限
max-lifetime: 0
#アイドル接続の最小数
minimum-idle: 10
#最大接続数
maximum-pool-size: 10
コメント