HikariCP 是一个可靠的、高性能的 JDBC 连接池
本来用的 alibaba/druid,但实际并没有怎么用其内置的监控网页,然后多方调查,决定弃用 druid
,替换为 HikariCP
Spring Boot 内置的 JDBC 连接池就是 HikariCP
,因此,减少了引入的步骤,更加简便了,只需要在 application.yml
中配置一下就可以用了
spring:
datasource:
name: database-a
driver-class-name: com.mysql.cj.jdbc.Driver # MySQL 驱动,这里根据引入的 mysql-connector-java 包版本选择不同的 Driver, 8.x 需要用 cj
url: jdbc:mysql://mysql:3306/database-a?useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8&allowMultiQueries=true
username: root
password: 1
type: com.zaxxer.hikari.HikariDataSource # JDBC 连接池类型:HikariCP
hikari:
connection-timeout: 30000 # 等待连接池分配链接的最大时长(毫秒),超过这个时长还没有可用的连接则发生 SQLException,默认:30 秒
minimum-idle: 5 # 最小连接数
maximum-pool-size: 20 # 最大连接数
auto-commit: true # 自动提交
idle-timeout: 600000 # 连接超时的最大时长(毫秒),超时则被释放(retired),默认:10 分钟
pool-name: DataSourceHikariCP # 连接池名称
max-lifetime: 1800000 # 连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认: 30 分钟
connection-test-query: select 1
HikariCP
作者建议 minimum-idle
和 maximum-pool-size
设置为一样的值,例如 10
maximum-pool-size
要根据服务器硬件配置来设置,硬件配置越低,这里的数值写的就越小,具体可参阅相关资料(还未搜集)