栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java > SpringBoot

在SpringBoot中使用HikariCP连接池

SpringBoot 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在SpringBoot中使用HikariCP连接池

在SpringBoot中使用HikariCP连接池

HikariCP 是一款性能极佳的数据库连接池,体积很小,大约130Kb。SpringBoot2.0也已经采用HikariCP作为默认连接池配置.。

HikariCP官方Github

https://github.com/brettwooldridge/HikariCP

对比各类连接池的基准测试。

和Druid比怎么样

国内用 Druid的也不少,如果需要在Durid 和 HikariCP之间进行一个选择,可以先参考双方作者之间的一次沟通
https://github.com/brettwooldridge/HikariCP/issues/232

SpringBoot整合 SpringBoot对数据源连接池的选择算法
  1. 如果 HikariCP可用,那么就会选择 HikariCP
  2. 如果没有 HikariCP,但是Tomcat-Pool可用。 就会使用 Tomcat-Pool
  3. HikariCP 和 Tomcat-Pool 都不可用,但是 commons-dbcp 可用的话,就会使用commons-dbcp

如果使用 spring-boot-starter-jdbc 或者spring-boot-starter-data-jpa “starters”, 会自动依赖 HikariCP 。

可以忽略这个算法,通过配置强制SpringBoot使用指定的数据源

spring.datasource.type=
HikariCP的Maven

	com.zaxxer
	HikariCP

配置项
#------------------------------------------------------------------------------------------------------
# 基本的核心配置,可以在 DataSourceProperties 中找到配置属性的定义
#------------------------------------------------------------------------------------------------------
spring.datasource.type=com.zaxxer.hikari.HikariDataSource
spring.datasource.url=com.mysql.cj.jdbc.Driver
spring.datasource.username=root
spring.datasource.password=root

#------------------------------------------------------------------------------------------------------
# hikari连接池的配置,可以在 HikariConfig 中找到配置属性的定义
#------------------------------------------------------------------------------------------------------
spring.datasource.hikari.allow-pool-suspension=
spring.datasource.hikari.auto-commit=
spring.datasource.hikari.catalog=
spring.datasource.hikari.connection-init-sql=
spring.datasource.hikari.connection-test-query=
spring.datasource.hikari.connection-timeout=
spring.datasource.hikari.data-source-class-name=
spring.datasource.hikari.data-source-j-n-d-i=
spring.datasource.hikari.data-source-properties=
spring.datasource.hikari.driver-class-name=
spring.datasource.hikari.exception-override-class-name=
spring.datasource.hikari.health-check-properties=
spring.datasource.hikari.health-check-registry=
spring.datasource.hikari.idle-timeout=
spring.datasource.hikari.initialization-fail-timeout=
spring.datasource.hikari.isolate-internal-queries=
spring.datasource.hikari.jdbc-url=
spring.datasource.hikari.leak-detection-threshold=
spring.datasource.hikari.login-timeout=
spring.datasource.hikari.max-lifetime=
spring.datasource.hikari.maximum-pool-size=
spring.datasource.hikari.metric-registry=
spring.datasource.hikari.metrics-tracker-factory=
spring.datasource.hikari.minimum-idle=
spring.datasource.hikari.password=
spring.datasource.hikari.pool-name=
spring.datasource.hikari.read-only=
spring.datasource.hikari.register-mbeans=
spring.datasource.hikari.scheduled-executor=
spring.datasource.hikari.schema=
spring.datasource.hikari.transaction-isolation=
spring.datasource.hikari.username=
spring.datasource.hikari.validation-timeout=

HikariCP带有 合理的 默认值,在大多数部署中都可以 正常运行 ,而无需进行其他调整。每个属性都是可选的。除了以下基本的核心属性以外。

  • data-source-class-name
  • jdbc-url
  • username
  • password

因为整合了springboot,springboot已经在 spring.datasource 配置了如上属性,所以Hikari的中这些配置在这里可以忽略。

常用的配置项,以及说明

https://github.com/brettwooldridge/HikariCP#configuration-knobs-baby

原文:https://springboot.io/t/topic/2193

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号