我曾经有一个tomcat
连接池配置来限制初始池大小:spring.datasource.tomcat.initial-size=2
现在切换到hikaricp
:限制最初启动的连接的等效条件是什么?
旁注:spring.datasource.hikari.minimumIdle
不会阻止启动时初始化10个连接。
答案 0 :(得分:1)
我刚刚发现这与我配置多个数据源有关。
通常,属性spring.datasource.hikari.minimum-idle=2
自动正确限制启动池的大小!
但是,如果有多个数据源,则缺少配置属性,如下所示:
@Bean
@ConfigurationProperties("spring.datasource.secondary.hikari")
public DataSource secondatyDataSource() {
return ...
}
在我刚拥有"spring.datasource.secondary"
之前,没有考虑到我的财产"spring.datasource.secondary.hikari.*"
。
这可能是错误记录的 https://docs.spring.io/spring-boot/docs/current/reference/html/howto-data-access.html
答案 1 :(得分:0)
使用spring boot,在您的application.properties中设置这些属性。
spring.jpa.hibernate.hikari.minimumIdle=5
spring.datasource.hikari.maximum-pool-size=10
答案 2 :(得分:0)
您可以使用Spring Boot中提供的以下属性:
spring.datasource.hikari.minimumIdle=5
spring.datasource.hikari.maximumPoolSize=8
然后:
spring.datasource.hikari.idleTimeout=120000
以限制空闲连接的寿命,但是hikari不会为您提供初始连接数量的此类属性。