数据源从druid迁移到HikariCP
最近正好在做新项目,使用的是druid数据源,也真是巧,有朋友建议我使用HikariCP这个数据源,可以说是牛的一笔,速度快的飞起,性能极高!
要比druid不知道好多少倍,druid其实在某些情况下是有问题的
另外springboot2.0 也已经把默认的数据源改为了HikariCP
什么是HikariCP,Hikari 就是 日文【光】的意思,大家可以自行百度
下面附上改数据源的具体配置,另外druid已经不用了:
(除此之外的其他相关配置保持不变,比如你的hibernate或者JPA或者Mybatis都是该咋咋地~)
############################################################ # # 配置数据源相关 使用阿里巴巴的 druid 数据源 # ############################################################ #spring.datasource.url=jdbc:mysql://localhost:3306/muxin #spring.datasource.username=root #spring.datasource.password=root #spring.datasource.driver-class-name=com.mysql.jdbc.Driver #spring.datasource.druid.initial-size=1 #spring.datasource.druid.min-idle=1 #spring.datasource.druid.max-active=20 #spring.datasource.druid.test-on-borrow=true #spring.datasource.druid.stat-view-servlet.allow=true ############################################################ # # 配置数据源相关 使用 HikariCP 数据源 # ############################################################ # jdbc_config datasource spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://localhost:3306/muxin?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true spring.datasource.username=root spring.datasource.password=root # Hikari will use the above plus the following to setup connection pooling spring.datasource.type=com.zaxxer.hikari.HikariDataSource # 等待连接池分配连接的最大时长(毫秒),超过这个时长还没可用的连接则发生SQLException, 默认:30秒 spring.datasource.hikari.connection-timeout=30000 # 最小连接数 spring.datasource.hikari.minimum-idle=5 # 最大连接数 spring.datasource.hikari.maximum-pool-size=15 # 自动提交 spring.datasource.hikari.auto-commit=true # 一个连接idle状态的最大时长(毫秒),超时则被释放(retired),默认:10分钟 spring.datasource.hikari.idle-timeout=600000 # 连接池名字 spring.datasource.hikari.pool-name=DatebookHikariCP # 一个连接的生命时长(毫秒),超时而且没被使用则被释放(retired),默认:30分钟 1800000ms,建议设置比数据库超时时长少60秒,参考MySQL wait_timeout参数(show variables like '%timeout%';) --> spring.datasource.hikari.max-lifetime=28740000 spring.datasource.hikari.connection-test-query=SELECT 1