参考文档:https://www.cnblogs.com/jackion5/p/14193025.html
Hikari连接池目前公认是性能最高的数据库连接池,同时也是SpringBoot2.0以后默认使用的数据库连接池。
Hikari相关配置
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql:~/~/127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSL=false&zeroDateTimeBehavior=convertToNull
spring.datasource.username=admin
spring.datasource.password=admin
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.hikari.minimum-idle=5
spring.datasource.hikari.maximum-pool-size=15
spring.datasource.hikari.auto-commit=true
spring.datasource.hikari.idle-timeout=30000
spring.datasource.hikari.pool-name=DatebookHikariCP
spring.datasource.hikari.max-lifetime=1800000
spring.datasource.hikari.connection-timeout=30000
spring.datasource.hikari.connection-test-query=SELECT 1
Hikari配置详解
配置项 | 案例值 | 描述 |
autoCommit | true | 是否自动提交 |
connectionTimeout | 30000 | 客户端创建连接等待超时时间,如果30秒内没有获取连接则抛异常,不再继续等待 |
idleTimeout | 60000 | 连接允许最长空闲时间,如果连接空闲时间超过1分钟,则会被关闭 |
maxLifetime | 1800000 | 连接最长生命周期,当连接存活时间达到30分钟之后会被关闭作退休处理 |
minimumIdle | 1 | 连接池中最小空闲连接数 |
maximumPoolSize | 10 | 连接池中最大连接数 |
readOnly | false | 从池中获取的连接是否是只读模式 |
validationTimeout | 5000 | 测试连接是否空闲的间隔 |
leadDetectionThreshold | 60000 | 连接被占用的超时时间,超过1分钟客户端没有释放连接则强制回收该连接,防止连接泄漏 |