HikariPool-1 - Connection is not available, request timed out after XXXXms.
hikaripool-0-连接不可用,请求在30000ms之后超时。意思是池等待30000ms的免费连接,但是您的应用程序没有返回任何连接。
原因一:
连接泄漏(在从池中借用之后连接没有关闭)。
解决方法:
hikariDataSource.setIdleTimeout(60000);
hikariDataSource.setConnectionTimeout(60000);
hikariDataSource.setValidationTimeout(3000);
hikariDataSource.setLoginTimeout(5);
hikariDataSource.setMaxLifetime(60000);
原因二:
这个问题可能与HikariCP无关。这个问题之所以持续存在,是因为REST控制器中的一些复杂的方法通过JPA存储库执行了DB中的多个更改。
由于某些原因,对这些接口的调用导致了越来越多的“空闲”活动连接,耗尽了池。将这些方法注释为@事务性或将所有逻辑封装到事务服务方法中,似乎都能解决这个问题。
或者
连接不够用,加大连接池的最大连接数;
如果我引用您的博文记录,没有指出,请求您的原谅。可以私信告诉我,我一定改正!
注:我写博文的目的主要是记录得失,若有什么误人子弟的地方,请多多见谅指正;