java–Hikari如何回收连接?

java–Hikari如何回收连接?,第1张

概述我请大家在HikariCP文档中找不到答案.鉴于我设置了以下池参数:minimumIdle 1 idleTimeout 10 minutes maxLifeTime 20 minutes 当我的应用程序在夜间闲置(没有人请求)时,我希望Hikari在连接的最后一个请求后10分钟关闭每个连接,在最后一个连接关闭后创建一个新连接(并将其保存在池中),以及然后每2

我请大家在HikariCP文档中找不到答案.鉴于我设置了以下池参数:

minimumIDle 1IDleTimeout 10 minutesmaxlifeTime 20 minutes

当我的应用程序在夜间闲置(没有人请求)时,我希望Hikari在连接的最后一个请求后10分钟关闭每个连接,在最后一个连接关闭后创建一个新连接(并将其保存在池中),以及然后每20分钟关闭并重新创建一个空闲连接.
我理解正确了吗?

事实是,在我的应用程序闲置一段时间后,我看到(通过下一个请求)以下异常:

WARN  c.z.hikari.proxy.ConnectionProxy - Connection oracle.jdbc.driver.T4CConnection@3c63f80e 

该连接可能已被Oracle关闭,无法使用.我会尝试使用上面的配置来避免这种情况.另一点是,我不明白为什么我从池中获得一个封闭的连接.这应该永远不会发生,因为Hikari在返回之前测试了连接的状态……

注意:我不是数据库的所有者,我无法配置它或让它重新配置以满足我的需要.我也无法访问其配置.

我们的设置是Spring 4.1.6,Hibernate 4.3.7和JPA 2.1 API,Hikari 2.1.0

最佳答案您对池参数的理解是正确的. Oracle实例的空闲超时可能短于10分钟.您可以做的一件事是为com.zaxxer.hikari包启用DEBUG级别日志记录.您将获得有关HikariCP内部发生的更多信息,而不会太嘈杂.

随意将日志发布为issue on Github,我们将对其进行审核. 总结

以上是内存溢出为你收集整理的java – Hikari如何回收连接?全部内容,希望文章能够帮你解决java – Hikari如何回收连接?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1256101.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-07
下一篇 2022-06-07

发表评论

登录后才能评论

评论列表(0条)