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

2025-11-10 851 views
6

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

回答

9

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

0

@liuyouchang 请问你有找到解决方案嘛

7

@liuyouchang 请问你有找到解决方案嘛 最终只是在服务器上弄了个服务监测脚本,能够在数据库服务异常时获取到即时信息,然后在人工进行处理。

1

@liuyouchang 请问你有找到解决方案嘛 最终只是在服务器上弄了个服务监测脚本,能够在数据库服务异常时获取到即时信息,然后在人工进行处理。 人工重启服务嘛?我现在就是这样的

2

@liuyouchang 请问你有找到解决方案嘛 最终只是在服务器上弄了个服务监测脚本,能够在数据库服务异常时获取到即时信息,然后在人工进行处理。 人工重启服务嘛?我现在就是这样的

是的