弹性数据库连接池探活策略调研(一)——HikariCP | 京东云技术团队
原文中文,约3000字,阅读约需8分钟。
📝
内容提要
数据库连接建立是昂贵的操作,客户端通常会将连接保存到连接池中进行复用。弹性数据库默认不会关闭客户端连接,但负载均衡代理会在连接空闲10分钟后清理连接。HikariCP连接池可以通过探活参数更高效地使用连接池,提高连接的可靠性和稳定性。推荐使用4.0.1以上版本。
🎯
关键要点
-
数据库连接建立是昂贵的操作,客户端通常将连接保存到连接池中复用。
-
弹性数据库默认不会关闭客户端连接,但负载均衡代理会在连接空闲10分钟后清理连接。
-
HikariCP连接池通过探活参数提高连接的可靠性和稳定性,推荐使用4.0.1以上版本。
-
HikariCP连接池在分配连接前会检查连接状态,失效连接会被替换为新连接。
-
未配置连接探活时,应用程序可能会遇到失效连接,增加性能开销。
-
HikariCP探活相关参数包括minimumIdle、maximumPoolSize、maxLifetime、idleTimeout、connectionTestQuery和keepaliveTime。
-
在低版本中,无法对连接进行保活,建议使用4.0.1及以上版本以支持keepaliveTime。
-
配置keepaliveTime后,可以定期验证连接的有效性,避免无效连接。
-
低版本中需将maxLifetime设置低于10分钟以避免拿到已关闭的连接,建议使用4.0.1以上版本。
🏷️