繁体   English   中英

如何在 mySpringBoot application.yml 中配置 HikariCP?

[英]How do I configure HikariCP in mySpringBoot application.yml?

我一直在尝试在我的 yaml 中配置几个 HikariCP 属性,如下所示,

datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    hikari:
        maximum-pool-size: 20
        leakDetectionThreshold: 60000 # 60 seconds

当我在启用 Hikari 调试的情况下启动我的服务时,我看到它似乎没有选择更改,

2020-06-17 17:47:54,144 [DEBUG] ( 1)              HikariConfig:1020  HikariPool-1 - configuration:
2020-06-17 17:47:54,147 [DEBUG] ( 1)              HikariConfig:1052  allowPoolSuspension.............false
2020-06-17 17:47:54,147 [DEBUG] ( 1)              HikariConfig:1052  autoCommit......................true
2020-06-17 17:47:54,147 [DEBUG] ( 1)              HikariConfig:1052  catalog.........................none
2020-06-17 17:47:54,147 [DEBUG] ( 1)              HikariConfig:1052  connectionInitSql...............none
2020-06-17 17:47:54,147 [DEBUG] ( 1)              HikariConfig:1052  connectionTestQuery.............none
2020-06-17 17:47:54,147 [DEBUG] ( 1)              HikariConfig:1052  connectionTimeout...............30000
2020-06-17 17:47:54,147 [DEBUG] ( 1)              HikariConfig:1052  dataSource......................none
2020-06-17 17:47:54,147 [DEBUG] ( 1)              HikariConfig:1052  dataSourceClassName.............none
2020-06-17 17:47:54,148 [DEBUG] ( 1)              HikariConfig:1052  dataSourceJNDI..................none
2020-06-17 17:47:54,148 [DEBUG] ( 1)              HikariConfig:1052  dataSourceProperties............{password=<masked>}
2020-06-17 17:47:54,150 [DEBUG] ( 1)              HikariConfig:1052  driverClassName................."com.mysql.cj.jdbc.Driver"
2020-06-17 17:47:54,151 [DEBUG] ( 1)              HikariConfig:1052  healthCheckProperties...........{}
2020-06-17 17:47:54,151 [DEBUG] ( 1)              HikariConfig:1052  healthCheckRegistry.............none
2020-06-17 17:47:54,151 [DEBUG] ( 1)              HikariConfig:1052  idleTimeout.....................600000
2020-06-17 17:47:54,151 [DEBUG] ( 1)              HikariConfig:1052  initializationFailTimeout.......1
2020-06-17 17:47:54,151 [DEBUG] ( 1)              HikariConfig:1052  isolateInternalQueries..........false
2020-06-17 17:47:54,151 [DEBUG] ( 1)              HikariConfig:1052  jdbcUrl.........................jdbc:mysql:replication://address=(type=master)(host=1.2.3.4),address=(type=master)(host=1.3.2.8)/test?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC
2020-06-17 17:47:54,151 [DEBUG] ( 1)              HikariConfig:1052  leakDetectionThreshold..........0
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  maxLifetime.....................1800000
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  maximumPoolSize.................10
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  metricRegistry..................none
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  metricsTrackerFactory...........com.zaxxer.hikari.metrics.micrometer.MicrometerMetricsTrackerFactory@4d210648
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  minimumIdle.....................10
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  password........................<masked>
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  poolName........................"HikariPool-1"
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  readOnly........................false
2020-06-17 17:47:54,152 [DEBUG] ( 1)              HikariConfig:1052  registerMbeans..................false
2020-06-17 17:47:54,153 [DEBUG] ( 1)              HikariConfig:1052  scheduledExecutor...............none
2020-06-17 17:47:54,153 [DEBUG] ( 1)              HikariConfig:1052  schema..........................none
2020-06-17 17:47:54,153 [DEBUG] ( 1)              HikariConfig:1052  threadFactory...................internal
2020-06-17 17:47:54,153 [DEBUG] ( 1)              HikariConfig:1052  transactionIsolation............default
2020-06-17 17:47:54,153 [DEBUG] ( 1)              HikariConfig:1052  validationTimeout...............5000

我错过了什么吗?

Spring 引导文档中 Hikari 设置如下所示:

spring:
  datasource:
    hikari:
      driver-class-name: com.mysql.cj.jdbc.Driver
      maximum-pool-size: 20
      leakDetectionThreshold: 60000 # 60 seconds

由于您使用的是 Spring 引导,正确的格式应该是:

spring:
  datasource:
    hikari:
      driver-class-name: com.mysql.cj.jdbc.Driver
      maximum-pool-size: 20
      leak-detection-threshold: 10000

实际上使用 dash( leak-detection-threshold ) 或 camelCase( leakDetectionThreshold ) 会很好,最好让它保持一致。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM