数据库服务异常导致druid连接一直重试

vhipe2zx  于 2023-02-04  发布在  Druid
关注(0)|答案(1)|浏览(526)

1.数据库服务异常时,druid会一直循环获取connection,最终导致整个服务卡死。
2.如果设置breakAfterAcquireFailure为true,获取连接异常时不会再一直循环,但是数据库服务恢复正常时druid又无法进行重连。
异常如下:

请问最新版本的druid有没有解决办法?

z8dt9xmd

z8dt9xmd1#

循环创建连接并不是导致服务卡死的原因。服务卡死的原因可能是业务线程取不到连接时会进行等待,等待时长受 maxWait 配置影响。由于 druid 本身的等待逻辑也有问题,业务线程实际等待的时间是 maxWait * 2。可以通过缩短 maxWait 降低影响。

相关问题