加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – MySql超时 – 我应该在Spring应用程序中设置autoReconne

发布时间:2020-12-15 04:52:09 所属栏目:Java 来源:网络整理
导读:在我的网站(使用 Spring 2.5和 MySql)上不活动一段时间后,我收到以下错误: org.springframework.dao.RecoverableDataAccessException:成功发送到服务器的最后一个数据包是52,847,830毫秒.比服务器配置的’wait_timeout’值长.您应该考虑在应用程序中使用之
在我的网站(使用 Spring 2.5和 MySql)上不活动一段时间后,我收到以下错误:

org.springframework.dao.RecoverableDataAccessException:成功发送到服务器的最后一个数据包是52,847,830毫秒.比服务器配置的’wait_timeout’值长.您应该考虑在应用程序中使用之前过期和/或测试连接有效性,增加服务器配置的客户端超时值,或使用Connector / J连接属性“autoReconnect = true”来避免此问题.

根据this question和linked bug,我不应该只设置autoReconnect = true.这是否意味着我必须在我做的任何查询中捕获此异常,然后重试该事务?这个逻辑应该在数据访问层还是模型层?是否有一种简单的方法来处理这个而不是包装每个查询以捕获它?

解决方法

我建议您使用连接池.它们可以提高性能,并可以处理低级细节,例如超时后重新连接等.

一个好的是c3p0,但还有其他的.春天有support for that,虽然我不知道所有的细节. Here是Spring的DataSource的配置.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读