DBCP连接池常用参数详解

DBCP连接池配置详解

        连接池空闲连接数:连接池中存放的没有被使用的连接,使用getNumIdle()方法获取

        连接池活动连接数:已经被程序借出,正在使用的连接数,当调用conn.close()方法后会归还给连接池,使用getNumActive()方法获取,如果程序一直没有调用conn.close()方法,该连接不会被释放,会一直占用活动连接数

        空闲连接回收器:参数timeBetweenEvictionRunsMillis配置后,连接池会开启独立线程,每隔timeBetweenEvictionRunsMillis(毫秒)检查numTestsPerEvictionRun个连接(只会检查空闲连接),如果连接空闲了minEvictableIdleTimeMillis(毫秒),就会移出连接池(销毁),如果发现销毁之后空闲连接数小于minIdle,就会重新创建补充空闲连接数到minIdle个,testWhileIdle =true时,回收器会去执行validationQuery ,检测该连接是否有效(超时、数据库已关闭连接等),检测失败就直接移出连接池(销毁)

参数

默认值

说明

url

 

数据库地址

driverClassName 

 

数据库驱动类名

username  

 

数据库用户名

password  

 

数据库密码

initialSize

0

连接池初始化时生成的连接数

minIdle

0

连接池中保持的最小空闲连接数,

maxIdle

8

连接池中保持的最大空闲连接数,超过的空闲连接将被释放

maxActive

8

连接池中支持的最大活动连接数

maxWait

-1

当连接池中没有空闲连接时,最大的等待时间(毫秒)

validationQuery

 

检查连接是否可以的验证语句

testOnBorrow

true

借出连接时是否校验,默认校验,建议设置为false

testOnReturn

false

归还连接时是否校验,默认不校验

testWhileIdle

false

空闲连接回收器是否校验空闲连接,默认不校验,建议设置为true,可以避免mysql数据库超时问题

timeBetweenEvictionRunsMillis

-1

空闲连接回收器运行周期(毫秒),默认不运行

numTestsPerEvictionRun

3

空闲连接回收器每次检测空闲连接数

minEvictableIdleTimeMillis

1000*60*30

空闲连接回收器移除空闲连接的最小空闲连接,如果连接空闲了minEvictableIdleTimeMillis(毫秒)就移除

removeAbandoned

false

连接泄漏回收参数,当可用连接数少于3个时才执行,(getNumIdle() < 2) and (getNumActive() > getMaxActive() - 3)时被触发

removeAbandonedTimeout

300

活动连接多久没被使用即视为Abandoned,即连接泄漏(秒)

logAbandoned

false

回收事件后,是否在log中打印出回收Connection的错误信息,默认不打印

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值