首页
学习
活动
专区
圈层
工具
发布

解决Tomcat数据连接池无法释放

于是到 Tomcat 的 manager 界面看了下,发现并没有出现 session 粘滞暴涨的情况。...好吧,当数据连接数达到 200 时,问题肯定会再次出现的。 于是我将这个问题告诉了小毛,要他自己去修改连接池释放机制(这里用的是项目单独设定的参数)。他说试过了,没有用,问下我有没有办法。...最终在强大的搜索引擎的帮助下,找到了相关参数说明,通过参考修改后成功解决了问题!...-- 超时等待时间以毫秒为单位 -->   dataSource.maxWait=1000 附上作者的原文说明: 在配置 DBCP 连接池时,主要难以理解的主要有:removeAbandoned 、logAbandoned...特附上原文地址:DBCP 连接池配置参数说明及优化 ,以示尊重! ---- 问题解决之后,就来玛思阁简单的记录一下,希望能帮到有需要的同行朋友。

3K90
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用dbcp作为数据池的坑

    并提供了新的Tomcat JDBC pool作为DBCP的可选替代。新出的Tomcat JDBC pool,据说比DBCP 1.4要好,未接触,也不在本文讨论范围内。...问题例一: MySQL8小时问题,Mysql服务器默认连接的“wait_timeout”是8小时,也就是说一个connection空闲超过8个小时,Mysql将自动断开该 connection。...问题例二:     以前还使用Sybase数据库,由于某种原因,数据库死了后重启、或断网后恢复。    ...等了约10分钟后,DBCP连接池中的连接还都是不能使用的(断开的),访问数据应用一直报错,最后只能重启Tomcat问题才解决 。...Tomcat中配置DBCP连接池 ----------------------------- Tomcat自带DBCP的包,是$CATALINA_HOME/lib/tomcat-dbcp.jar。

    3.5K20

    Tomcat 6 JNDI数据源详解

    最常见的连接池就是DBCP和C30P了,在tomcat中默认使用的DBCP的连接池,在Hibernate中则默认使用的是C3P0。...他们的区别对于使用者来说最明显的就是,默认情况下DBCP不提供空闲连接的释放,需要手动开启。 下面介绍下Tomcat中数据连接池的配置及使用。 ?...另外,tomcat中默认使用的DBCP连接池,其jar包位于CATALINA_HOME/lib下,tomcat-dbcp.jar。  需要注意的是,默认情况下dbcp不会去释放空闲的连接。...可以通过配置某些属性来自动回收连接,首先设置removeAbandoned="true"开启回收,然后设置removeAbandonedTimeout="300"设置连接的时间,超过该时间就会自动收回。.../proper/commons-dbcp/configuration.html 【3】Tomcat JNDI Database:http://tomcat.apache.org/tomcat-6.0-doc

    1.3K90

    JDBC、C3P0、DBCP、Druid 数据源连接池使用的对比总结.md

    因为建立数据库连接是一个非常耗时、耗资源的行为,所以通过连接池预先同数据库建立一些连接,放在内存中,应用程序需要建立数据库连接时直接到连接池中申请一个就行,用完后再放回去,极大的提高了数据库连接的性能问题...java 连接池项目,是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序中使用,Tomcat的数据源使用的就是DBCP dbcp所需jar:commons-dbcp.jar...DBCP c3p0 Druid 是否超时关闭连接 removeAbandoned breakAfterAcquireFailure removeAbandoned 超时时间 removeAbandonedTimeout...在Druid中,不会存在Oracle下PSCache占用内存过多的问题,可以把这个数值配置大一些,比如说100 testOnBorrow true 申请连接时执行validationQuery检测连接是否有效...removeAbandoned 对于建立时间超过removeAbandonedTimeout的连接强制关闭 removeAbandoned-Timeout 指定连接建立多长时间就需要被强制关闭 logAbandoned

    7K50

    为什么说druid是目前最好的数据库连接池?

    二、程序实例 熟悉 web 系统开发的同学,基本都知道,在 Java 生态中开源的常用数据库连接池有以下几种: dbcp:DBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池...,DBCP可以直接的在应用程序中使用,Tomcat的数据源使用的就是DBCP c3p0:c3p0是一个开放源代码的JDBC连接池,它在lib目录中与Hibernate一起发布,包括了实现jdbc3和jdbc2...useUnicode=true&characterEncoding=UTF-8 initialSize=5 maxActive=1000 maxIdle=5 removeAbandoned=ture removeAbandonedTimeout...prop.getProperty("maxIdle"))); dataSource.setRemoveAbandoned(Boolean.valueOf(prop.getProperty("removeAbandoned...四、小结 从上面的测试结果,我们可以很清晰的看到,在数据连接池方面,druid和dbcp旗鼓相当,而并发方面druid的稳定性大于dbcp,c3p0相比druid和dbcp,稳定性和执行速度要弱些。

    1.5K30

    c3p0,DBPC,Druid三大连接池的区别性能【面试+工作】

    --> removeAbandoned" value="true" /> <!...简 介DBCPDBCP是一个依赖Jakarta commons-pool对象池机制的数据库连接池.DBCP可以直接的在应用程序中使用,Tomcat的数据源使用的就是DBCP。...在Druid中,不会存在Oracle下PSCache占用内存过多的问题,可以把这个数值配置大一些,比如说100testOnBorrowTRUE申请连接时执行validationQuery检测连接是否有效...removeAbandoned 对于建立时间超过removeAbandonedTimeout的连接强制关闭removeAbandoned-Timeout 指定连接建立多长时间就需要被强制关闭logAbandonedFALSE...对比三个连接池发现,druid功能强大,性能高,虽然在复杂环境下稳定性没有测过,但是后援团(阿里)比较强大,就算有问题也能很快的解决。而且还提供了监控平台,有助于优化我们的代码和sql。

    2.1K20
    领券