SpringBoot整合hikari

hikari号称史上最快连接池,也是SpringBoot默认推荐的连接池
更多精彩内容欢迎大家访问 我的Hexo博客

为什么hikari连接池如此的快

官网说:

  1. 自定义数组类型(FastStatementList)代替ArrayList:避免每次get()调用都要进行range check,避免调用remove()时的从头到尾的扫描;
  2. 优化代理和拦截器:减少代码,例如HikariCP的Statement proxy只有100行代码;
  3. 字节码精简:优化代码,直到编译后的字节码最少,这样,CPU缓存可以加载更多的程序代码;
  4. 自定义集合类型(ConcurrentBag):提高并发读写的效率;
    由此可见,相比于其他链接池C3P0,DBCP“性能王”hikari的优势很明显,再加上它130kb的小身形,日后前途不可限量。

配置

首先新建一个SpringBoot的web项目,详情请参考我的上一篇博文SpringBoot初体验,然后配置application.yml文件指定连接池类型为hikari

# 数据库配置
spring.datasource.url = jdbc:mysql://localhost:3306/hikariTest?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username = root
spring.datasource.password = root
spring.datasource.driverClassName = com.mysql.jdbc.Driver
#指定连接池类型为hikari
spring.datasource.type=com.zaxxer.hikari.HikariDataSource

# 连接池最大连接数,默认是10
spring.datasource.hikari.maximum-pool-size=50
# 此属性控制从池返回的连接的默认自动提交行为,默认值:true
spring.datasource.hikari.auto-commit=true
#连接将被测试活动的最大时间量
spring.datasource.hikari.validationTimeout=10000 
# 连接池连接的最长生命周期,默认30分钟
spring.datasource.hikari.max-lifetime=1800000
# 连接超时时间,默认30秒
spring.datasource.hikari.connection-timeout=30000
#如果您的驱动程序支持JDBC4,不要设置此属性
spring.datasource.hikari.connection-test-query=SELECT 1
# 最小空闲连接数量
spring.datasource.hikari.minimum-idle=10
# 空闲连接存活最大时间,默认10分钟
spring.datasource.hikari.idle-timeout=180000

pom.xml中添加依赖包

    
        com.zaxxer
        HikariCP
        3.4.2
    

启动项目看到com.zaxxer.hikari.HikariDataSource:Start completed即连接成功

你可能感兴趣的:(SpringBoot整合hikari)