zoukankan      html  css  js  c++  java
  • Springboot2.0之HikariCP 连接池

    springboot的HikariDataSource默认配置的默认值如下

    name构造器默认值默认配置validate之后的值validate重置
    minIdle -1 10 minIdle<0或者minIdle>maxPoolSize,则被重置为maxPoolSize
    maxPoolSize -1 10 如果maxPoolSize小于1,则会被重置。当minIdle<=0被重置为DEFAULT_POOL_SIZE则为10;如果minIdle>0则重置为minIdle的值
    maxLifetime MINUTES.toMillis(30) = 1800000 1800000 如果不等于0且小于30秒则会被重置回30分钟
    connectionTimeout SECONDS.toMillis(30) = 30000 30000 如果小于250毫秒,则被重置回30秒
    validationTimeout SECONDS.toMillis(5) = 5000 5000 如果小于250毫秒,则会被重置回5秒
    loginTimeout 10 30 Math.max(1, (int) MILLISECONDS.toSeconds(500L + connectionTimeout)),为connectionTimeout+500ms转为秒数取整 与 1 取最大者
    idleTimeout MINUTES.toMillis(10) = 600000 600000 如果idleTimeout+1秒>maxLifetime 且 maxLifetime>0,则会被重置为0;如果idleTimeout!=0且小于10秒,则会被重置为10秒
    leakDetectionThreshold 0 0 如果大于0且不是单元测试,则进一步判断:(leakDetectionThreshold < SECONDS.toMillis(2) or (leakDetectionThreshold > maxLifetime && maxLifetime > 0),会被重置为0 . 即如果要生效则必须>0,而且不能小于2秒,而且当maxLifetime > 0时不能大于maxLifetime
    initializationFailTimeout 1 1 -
    isAutoCommit true true -
    isReadOnly false fasle -
    isAllowPoolSuspension false false -
    isIsolateInternalQueries false false -
    isRegisterMbeans false false -
    sealed false true 运行启动后这个标志为true,表示不再运行修改
    poolName null HikariPool-1 -
    catalog null null -
    connectionInitSql null null -
    connectionTestQuery null null -
    dataSourceClassName null null -
    schema null null -
    transactionIsolationName null null -
    dataSource null null -
    dataSourceProperties {} {} -
    threadFactory null null -
    scheduledExecutor null null -
    metricsTrackerFactory null null -
    metricRegistry null null -
    healthCheckRegistry null null -
    healthCheckProperties {} {} -

    连接hikari数据源

    spring.datasource.type=com.zaxxer.hikari.HikariDataSource


    数据库连接地址
    spring.datasource.hikari.jdbc-url=


    数据库账户,如果使用了jdbcUrl则需要此属性
    spring.datasource.hikari.username=


    数据库密码,如果使用了jdbcUrl则需要此属性
    spring.datasource.hikari.password=


    是否自动提交事务
    spring.datasource.hikari.auto-commit=


    连接超时时间(毫秒),如果在没有连接可用的情况下等待超过此时间,则抛出 SQLException 默认30000(30秒)
    spring.datasource.hikari.connection-timeout=


    空闲超时时间(毫秒),只有在minimumIdle<maximumPoolSize时生效,超时的连接可能被回收,数值 0 表示空闲连接永不从池中删除 默认600000(10分钟)
    spring.datasource.hikari.idle-timeout=


    连接池中的连接的最长生命周期(毫秒)。数值 0 表示不限制 默认1800000(30分钟)
    spring.datasource.hikari.max-lifetime=


    连接池每分配一条连接前执行的查询语句(如:SELECT 1),以验证该连接是否是有效的
    。如果你的驱动程序支持 JDBC4,HikariCP 强烈建议我们不要设置此属性
    spring.datasource.hikari.connection-test-query=SELECT 1


    最小空闲连接数,HikariCP 建议我们不要设置此值,而是充当固定大小的连接池 默认与maximumPoolSize数值相同
    spring.datasource.hikari.minimum-idle=


    连接池中可同时连接的最大连接数,当池中没有空闲连接可用时,就会阻塞直到超出connectionTimeout设定的数值 默认10
    spring.datasource.hikari.maximum-pool-size=


    连接池名称,主要用于显示在日志记录和 JMX 管理控制台中
    spring.datasource.hikari.pool-name=HeartHikariCP


    是否标记数据源只读 true 或者 false
    spring.datasource.hikari.read-only=


    使用HikariCP时,是否允许连接池暂停,默认为: false
    spring.datasource.hikari.allow-pool-suspension=


    是否自定义配置,为true时下面两个参数才生效
    spring.datasource.hikari.data-source-properties.cachePrepStmts=true


    连接池大小默认25,官方推荐250-500
    spring.datasource.hikari.data-source-properties.prepStmtCacheSize=


    单条语句最大长度默认256,官方推荐2048
    spring.datasource.hikari.data-source-properties.prepStmtCacheSqlLimit=


    新版本MySQL支持服务器端准备,开启能够得到显著性能提升 true 或者 false
    spring.datasource.hikari.data-source-properties.useServerPrepStmts=


    使用Hikari connection pool 时,在心跳检查时传递的属性
    spring.datasource.hikari.health-check-properties.[key]


    使用Hikari connection pool时,多少毫秒检测一次连接泄露.
    spring.datasource.hikari.leak-detection-threshold=

    技术小白,努力学习。
  • 相关阅读:
    WCF之ABC
    一次性为自定义实体类的数据填充
    在HttpHandlers中使用Session
    ASP.NET 2.0防止同一用户同时登陆
    Winson.Framework 1.5发布!
    SqlPager分页控件的使用!
    ExtJS 学习心得(一)
    [原创]Discuz!NT1.1高亮代码插件1.5稳定版!
    Winson.Framework 1.0发布!
    一个不错的WEB打印解决方案!
  • 原文地址:https://www.cnblogs.com/mei0619/p/12512117.html
Copyright © 2011-2022 走看看