以下配置项说明是基于 Druid 的 1.1.9 版本
配置 | 缺省值 | 说明 |
---|---|---|
initialSize | 0 | 连接池启动时初始创建的连接数量 |
maxActive | 8 | 相当于 maxPoolSize,连接池中连接最大的数量 |
minIdle | 0 | 相当于 minPoolSize,始终保留在池中的最小连接数,池中的连接数量若低于此值则创建新的连接,如果连接验证失败将缩小至此值 |
testWhileIdle | true | 建议配置为true,不影响性能,并且保证安全性。申请连接的时候进行检测,如果当前连接的空闲时间大于timeBetweenEvictionRunsMillis,则执行 validationQuery 检测当前连接是否有效,如果检测结果为无效, 则当前连接将被从连接池中去除掉 |
validationQuery | null | 用来检测连接是否有效的 sql,要求是一个查询语句,如果 validationQuery 为null,则 testOnBorrow、testOnReturn、testWhileIdle 都不会有作用 |
minEvictableIdleTimeMillis | 30分钟 | 连接池中的连接保持空闲而不被连接池驱逐的最长时间 |
timeBetweenEvictionRunsMillis | 1分钟 | 有两个含义:1) DestroyConnectionThread 线程启动检测连接池中连接的间隔时间,在 Destroy 线程中如果发现某连接空闲时间大于等于 minEvictableIdleTimeMillis 则关闭其物理连接 2) 作为 testWhileIdle 逻辑中的一个判断依据,详细看testWhileIdle 配置说明 |
keepAlive | false | 连接池中的连接,空闲时间超过 keepAliveBetweenTimeMillis,则会执行 keepAlive 操作。 |