今天早上线上的服务突然无法访问,通过日志排查之后是昨天晚上22:28的时候数据库被关闭导致的。在druid的配置中的这个BreakAfterAcquireFailure是用于失败重连,默认为false,但是在我的项目配置中配置为true。
后来druid的官网查看了发现true表示向数据库请求连接失败后,就算后端数据库恢复正常也不进行重连,客户端对pool的请求都拒绝掉.false表示新的请求都会尝试去数据库请求connection.默认为false。
所以当数据库重新恢复之后,后端程序就不会去请求数据库,导致无查询结果返回