`

spring dbcp连接池配置

    博客分类:
  • java
阅读更多
spring中配置dbcp连接池
使用ApplicationServer级别的连接池, 在ApplicationServer内的几个webapp间共享连接池以节约总的连接数,也可以为每个webapp独立分配以保证关键应用的供应。

<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
  <property name="driverClassName" value="${jdbc.driverClassName}"/>
  <property name="url" value="${jdbc.url}"/>
  <property name="username" value="${jdbc.username}"/>
  <property name="password" value="${jdbc.password}"/>
  <!-- 连接池启动时的初始值 -->
  <property name="initialSize" value="10" />
  <!-- 连接池的最大值 -->
  <property name="maxActive" value="100" />
  <!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 -->
  <property name="maxIdle" value="50" />
  <!-- 最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 -->
  <property name="minIdle" value="10" />
  <!--#给出一条简单的sql语句进行验证-->
  <property name="validationQuery" value="select getdate()" />
  <!--#在取出连接时进行有效验证-->
  <property name="testOnBorrow" value="true" />
  <property name="removeAbandonedTimeout" value="120" />
  <property name="removeAbandoned" value="true" />
  <!-- #运行判断连接超时任务的时间间隔,单位为毫秒,默认为-1,即不执行任务。 -->
  <property name="timeBetweenEvictionRunsMillis" value="3600000" />
  <!-- #连接的超时时间,默认为半小时。 -->
  <property name="minEvictableIdleTimeMillis" value="3600000" /> 
</bean>



( 以下内容摘在springside):
DBCP的性能配置主要是4个参数
#连接池启动时的初始值.
dbcp.initialSize=10
#连接池的最大值.
dbcp.maxActive=50
#最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止。
dbcp.maxIdle=20
#最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请。
dbcp.minIdle=5
一般这几个参数应该放在applicationContext.properties里方便部署时快速修改。
有两种配置风格,
  比如较少使用者的管理界面,平时的使用者不多,但瞬时可能会有较多的使用者,如Mini-Web,会设置一个较低的maxIdle 而设置较高的maxActive。
  比如长期高负荷运行的业务系统,会设置一个合理的maxIdle值,且maxActive==maxIdle
长期idle连接的处理:
Mysql服务端会断开超过8小时的空闲连接,如果系统只在白天工作时间被使用,DBCP的连接就很容易被断开的连接,而且DBCP对jdbc url里设置autoReconnect=true是无效。
更好的做法DBCP主动断开超时的连接。
#运行判断连接超时任务的时间间隔,单位为毫秒,默认为-1,即不执行任务。
timeBetweenEvictionRunsMillis=3600000
#连接的超时时间,默认为半小时。
minEvictableIdleTimeMillis=3600000
经测试,按上面的设置,DBCP会在连接idle两小时后将其断开。

http://www.cnblogs.com/realviv/articles/1837191.html
分享到:
评论

相关推荐

    关于DBCP数据库连接池配置整理宣贯.pdf

    在使用DBCP时,我们需要配置一系列参数来定制连接池的行为。以下是一些主要的配置参数及其说明: 1. `username` 和 `password`:这两个参数用于设置连接数据库所需的用户名和密码,它们会被传递给JDBC驱动进行身份...

    DBCP连接池

    在SSH(Spring、Struts和Hibernate)这样的经典企业级开发框架中,DBCP连接池是一个常用的数据库管理工具。 1. **数据库连接池概念**:数据库连接池是在应用服务器启动时创建的,它会预先建立一定数量的数据库连接...

    dbcp连接池所需包

    在这个场景中,"dbcp连接池所需包"指的是用于配置和使用DBCP连接池的必要Java档案库(JAR包)。 首先,`commons-dbcp.jar`是DBCP的主要实现包,它包含了一系列用于管理和维护数据库连接的类和接口。这个库提供了...

    dbcp连接池常用包

    在标题"dbcp连接池常用包"中,"常用包"指的是DBCP连接池所需的必备库文件,这些文件包含了DBCP的不同版本,分别为1.3、1.4和1.5。每个版本可能对应着不同的功能特性和修复的bug,开发者可以根据项目的兼容性和需求...

    spring中 连接池的使用

    当切换到C3P0时,首先引入了`PropertyPlaceholderConfigurer`来加载`jdbc.properties`文件,这样可以将敏感信息(如用户名、密码和连接池配置)存储在外部文件中,而不是硬编码在XML配置中。然后,配置了`...

    dbcp连接池

    总结起来,DBCP连接池是Java应用程序中管理和复用数据库连接的重要工具,通过合理配置和使用,能够显著提升数据库操作的效率,同时降低系统资源的消耗。在压缩包中的`dbcp`文件可能包含了DBCP的完整库,可以直接导入...

    HibernateADD (hibernate和spring整合,使用dbcp连接池方式连接数据库)

    在IT行业中,数据库连接管理是应用系统开发中的关键环节,特别是在使用Java进行企业级开发时。...总之,整合Hibernate、Spring和DBCP连接池,可以构建出一个高效、灵活、易于维护的企业级数据库应用。

    dbcp连接池jar包

    下面将详细介绍DBCP连接池、DBUtils以及如何在项目中配置和使用它们: 1. **DBCP连接池** DBCP连接池的工作原理是预先在内存中创建一定数量的数据库连接,当应用程序需要时,可以从池中获取一个已存在的连接,而...

    dbcp连接池包

    使用DBCP连接池时,开发者通常需要编写配置代码,例如使用XML配置文件或者在代码中直接配置。下面是一个简单的XML配置示例: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" ...

    dbcp数据库连接池所需jar包

    使用DBCP数据库连接池,你需要在你的Java项目中引入这三个JAR文件,并进行相应的配置。以下是一些基本配置步骤: 1. 将这三个JAR文件添加到项目的类路径中。 2. 创建一个XML配置文件(如`dbcp-config.xml`),定义...

    dbcp连接池所需jar(commons-collections-3.1.jar,commons-dbcp-1.2.jar,commons-pool-1.6.)

    在实际应用中,DBCP连接池可以与其他中间件如Spring框架集成,简化管理和配置。同时,DBCP也有其局限性,比如性能和稳定性相比一些现代的连接池如HikariCP稍弱。因此,随着技术的发展,一些项目可能已经转向了更高效...

    dbcp连接池所使用的jar和案例

    - 在Java应用中,需要通过XML或Java代码来配置DBCP连接池,包括设置初始化大小、最大连接数、超时时间、验证SQL等参数。 - 示例XML配置: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp....

    spring-连接池配置

    ### Spring 数据库连接池配置详解 #### 一、数据库连接池依赖库 为了在Spring框架中使用数据库连接池,我们需要引入以下两个依赖库: 1. **commons-dbcp.jar**:这是Apache Commons DBCP(Database Connection ...

    dbcp数据库连接池jar包

    综上所述,DBCP数据库连接池是Java Web开发中常用的一种数据库连接管理工具,通过合理的配置和使用,可以显著提高应用的性能和稳定性。在实际项目中,结合Spring等框架,可以更便捷地管理和使用数据库连接。确保正确...

    配置log4j配置数据库连接池(以dbcp连接池为例),并将log信息存储在数据库中(以mysql为例)

    数据源名`jdbc/LogDBCP`需要在Spring配置中声明,以关联到我们之前配置的DBCP连接池: ```xml &lt;bean id="LogDBCP" class="org.springframework.jndi.JndiObjectFactoryBean"&gt; ``` 最后,我们需要创建一个数据库...

    使用DBCP连接池所需要的jar包

    在使用这些jar包进行数据库连接池配置时,通常需要以下几个步骤: 1. **添加依赖**:将这三个jar包添加到项目的类路径中,可以是IDE的构建路径,或者是WEB-INF/lib目录下,如果是Maven或Gradle项目,则需要在对应的...

    DBCP连接池jar文件

    使用DBCP连接池,开发者需要在应用配置中设置相关参数,例如最小连接数、最大连接数、连接超时时间、验证SQL语句等。以下是一个简单的配置示例: ```xml &lt;bean id="dataSource" class="org.apache.commons.dbcp....

Global site tag (gtag.js) - Google Analytics