druid连接池mysql⾃动关闭_druid连接池
近期⼀直报连接池连接的错误,主要就是那个什么last packet 多少ms以前。
所以就研究了下。
druid连接池和mysql的连接关系可以简单理解为下⾯的案例。
有10个接线员A和远程10个接⼝员B在通讯,如果不⽤连接池,那么每⽤⼀次就要拨号、建⽴链接、通话、挂断,⾮常浪费时间。所以如果10个接线员A提前就和B接通,然后⼀直不挂断,这样需要时只要喊话⼀下就⾏了,效率⾼,真正的基于TCP连接可以参考
但是这样会导致⼀个问题,如果B偷懒,偷偷的将电话挂断,⽽A不知道,再讲话就会出错了。
针对这种情况,druid提供了⼏种解决⽅案:
1、在连接时加⼊探测。
Xml代码
#空闲时检测
mysql下载链接
#获取连接时检测
#放回连接池时检测
2、在空闲时检测链接。
Xml代码
注:每隔60毫秒检测⼀下,连接池在池中最⼩⽣存的时间是300秒。
3、druid连接池基本配置:
Xml代码main.db.initialSize=10#初始化连接个数
main.db.minIdle=5#如果10个连接被⼲掉了,起码起来5个
main.db.maxActive=50#最多到50个
main.db.maxWait=60000#连接超过60秒报超时异常,⼀般是⽹络问题或者服务器响应太慢。
4、完整的案例:
Xml代码
init-method="init" destroy-method="close">
4.2、d

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。