解决 线程池超时的问题。
This commit is contained in:
@@ -68,7 +68,8 @@ spring:
|
||||
database: 0
|
||||
datasource:
|
||||
driver-class-name: com.mysql.cj.jdbc.Driver
|
||||
url: jdbc:mysql://124.221.59.58:3309/ai_smart_badge?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
|
||||
# 优化JDBC URL,添加连接参数以更好地处理连接超时和重连
|
||||
url: jdbc:mysql://124.221.59.58:3309/ai_smart_badge?useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false&socketTimeout=60000&connectTimeout=30000&autoReconnect=true&failOverReadOnly=false&maxReconnects=3&initialTimeout=2
|
||||
# url: jdbc:mysql://101.35.52.237:13307/ai_smart_badge?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&autoReconnect=true&failOverReadOnly=false&maxReconnects=3&initialTimeout=2&connectTimeout=30000&socketTimeout=60000
|
||||
username: root
|
||||
# password: cstcom.123!
|
||||
@@ -82,19 +83,24 @@ spring:
|
||||
validationTimeout: 5000 # 连接验证的超时时间,5秒
|
||||
# 连接生命周期配置(毫秒)
|
||||
idleTimeout: 300000 # 空闲连接超时时间,5分钟
|
||||
maxLifetime: 1800000 # 连接最大生存时间,30分钟(建议小于MySQL wait_timeout)
|
||||
# maxLifetime设置为MySQL wait_timeout的75%(28800秒 * 0.75 = 21600秒 = 6小时)
|
||||
# 当前MySQL wait_timeout=28800秒(8小时),设置为6小时(21600000ms)以确保连接在服务器关闭前被回收
|
||||
# HikariCP官方建议maxLifetime应为数据库wait_timeout的70-80%,6小时(75%)是一个理想的平衡值
|
||||
maxLifetime: 21600000 # 连接最大生存时间,6小时(wait_timeout=8小时的75%,确保小于服务器超时时间)
|
||||
# 连接验证配置
|
||||
connectionTestQuery: "SELECT 1"
|
||||
# 连接泄漏检测(毫秒)- 如果连接超过此时间未归还,会记录警告
|
||||
leakDetectionThreshold: 60000 # 60秒
|
||||
# 保持连接活跃(毫秒)- 定期发送keepalive查询保持连接活跃
|
||||
keepaliveTime: 300000 # 5分钟
|
||||
# 缩短keepaliveTime到2分钟,更频繁地检测连接是否有效,避免使用已关闭的连接
|
||||
keepaliveTime: 120000 # 2分钟,定期发送keepalive查询保持连接活跃
|
||||
# 连接池名称(便于监控和调试)
|
||||
poolName: HikariPool-Main
|
||||
# 连接初始化配置
|
||||
initializationFailTimeout: 1 # 初始化失败时立即失败,不等待
|
||||
# 是否允许连接池自动提交
|
||||
autoCommit: true
|
||||
# 连接注册JMX(可选,用于监控)
|
||||
registerMbeans: false
|
||||
output:
|
||||
ansi:
|
||||
enabled: always
|
||||
|
||||
Reference in New Issue
Block a user