我使用的是Spring Boot(1.5.6),Hibernate,Postgres,Hikari(2.7.8).我的配置是:
spring.datasource.hikari.minimumIdle=1
spring.datasource.hikari.maximumPoolSize=20
spring.datasource.hikari.idleTimeout=30000
spring.datasource.hikari.poolName=SpringBootJPAHikariCP
spring.datasource.hikari.maxLifetime=50000
spring.datasource.hikari.connectionTimeout=30000
我期望的是,空闲连接应该在30000毫秒/ 30秒的空闲后释放.
问题在于每个请求都要建立新的连接,保留所有空闲连接.所以经过一段时间我最终得到20个空闲连接并且有了新的请求Hikari尝试获得一个新连接并获得SpringBootJPAHikariCP – 连接不可用,请求在30001ms后超时.
那么,我做错了什么.或者误解了配置?
Hikari初始化日志:
SpringBootJPAHikariCP - configuration:
allowPoolSuspension.............false
autoCommit......................true
catalog.........................none
connectionInitSql...............none
connectionTestQuery.............none
connectionTimeout.....