网站最近发生了数据库连接爆掉的问题。排查了下各个应用存在空闲连接过多的情况。
我们部门的一个应用使用dbcp连接池,也存在空闲连接过多情况。
之前是根据网站的统一配置,存在空闲连接保持过多的情况,在修改过程中在官网上把这些配置项重新看了一遍。在此记录一下!
官方参考url:
http://commons.apache.org/dbcp/configuration.html
以下记录几个配置项的意思:
参数
|
默认值
|
描述
|
defaultAutoCommit
|
true
|
是否自动提交
|
defaultReadOnly
|
Driver default
|
用于标识是否只读
|
defaultTransactionIsolation
|
Driver default
|
默认的事务隔离,有以下值:
- NONE
- READ_COMMITTED
- READ_UNCOMMITTED
- REPEATABLE_READ
- SERIALIZABLE
|
initialSize
|
0
|
连接池创建时的初始连接数
|
maxActive
|
8
|
连接池里的最大活跃连接数(一般和数据库最大并发保持一致)
|
maxIdle
|
8
|
连接池里的最大空闲连接数
|
minIdle
|
0
|
连接池里的最小空闲连接数
|
maxWait
|
indefinitely
|
当没有连接可用时的最长等待时间
|
timeBetweenEvictionRunsMillis
|
左边这三个参数都是数字,是联合起来使用的,代表意思是:连接逐出线程每隔timeBetweenEvictionRunsMillis毫秒进行对池中的numTestsPerEvictionRun的空闲连接的检测,如果该空闲连接已经空闲超过minEvictableIdleTimeMillis毫秒,且空闲连接处大于minIdle,将进行回收。
如果timeBetweenEvictionRunsMillis<1不会启动逐出线程。
|
numTestsPerEvictionRun
|
minEvictableIdleTimeMillis
|
如果连接有限,maxIdle不要设置过大,同时timeBetweenEvictionRunsMillis也不要设置过长。当然资源充裕的情况下,减少收缩,可以设置大一点。
分享到:
相关推荐
dbcp数据源配置JAR包
配置DBCP数据源必备的jar包: 1.commons-dbcp-1.4.jar 2.commons-pool-1.6.jar 给大家分享一下!
DBCP数据源jar包 DBCP数据源jar包 DBCP数据源jar包 DBCP数据源jar包 DBCP数据源jar包 DBCP数据源jar包
Spring_c3p0与dbcp数据源_的配置.doc 很不错的哦!拿出来和大家一起学习!
配置dbcp数据源的必要的jar包,非常好用!
dbcp数据源,非常好用,对应的还有c3p0,这个下次再传
数据库配置数据源所需 数据库配置数据源所需 数据库配置数据源所需 数据库配置数据源所需
spring中连接数据库的 dbcp数据源代码所需要的jar包
里面包含commons-dbcp.jar,commons-pool.jar2个jar包。配置的时候把jar包复制到相应目录即可。
NULL 博文链接:https://gary-bu.iteye.com/blog/2024022
dbcp数据源.rar
dbcp 的 基 本 数 据 源 类的配置方法,
DBCP数据源必需jar包
包含com.springsource.org.apache.commons.dbcp-1.2.2.osgi.jar和com.springsource.org.apache.commons.pool-1.5.3.jar
打包好的DBCP配置相关jar包,配置DBCP时会很有用,包含commons-dbcp.jar与commons-pool.jar
其中包括两个jar包,commons-dbcp.jar,commons-pool.jar
apache基金会的开源数据源dbcp的基本配置
Apache-dbcp基本配置过程 Apache-dbcp基本配置过程Apache-dbcp基本配置过程Apache-dbcp基本配置过程
COMMONS DBCP的使用与配置COMMONS DBCP的使用与配置COMMONS DBCP的使用与配置
数据库连接池DBCP的详细配置详解,教你如何配置详细的DBCP的参数