1. 问题描述
Web程序在tomcat刚开始运行时速度很快,但过一段时间后发现速度变得很慢。
检查日志输出,发现异常如下:
org.apache.commons.dbcp.SQLNestedException: Cannot get a connection, pool exhausted, cause:
java.util.NoSuchElementException: Timeout waiting for idle object
同时在SQLServer事件探查器中发现,每执行一次sql语句都要产生Audit login事件,语句执行后产生
Audit logout事件。说明每一次tomcat都是重新打开新的连接。
2. 问题解决
tomcat 的数据源定义提供了三个参数:
a. 如果设为true则tomcat自动检查恢复重新利用,没有正常关闭的Connection.(默认是false)
程序代码
<parameter>
<name>removeAbandoned</name>
<value>true</value>
</parameter>
b. 设定连接在多少秒内被认为是放弃的连接,即可进行恢复利用。
程序代码
<parameter>
<name>removeAbandonedTimeout</name>
<value>60</value>
</parameter>
c. 输出回收的日志,可以详细打印出异常从而发现是在那里发生了泄漏
程序代码
<parameter>
<name>logAbandoned</name>
<value>true</value>
</parameter>
分享到:
相关推荐
Tomcat连接池配置,包你学会tomcat连接池的使用
Tomcat连接池的配置说明,教你如何配置tomcat的连接池,内容详细。
tomcat 配置连接池tomcat 配置连接池tomcat 配置连接池tomcat 配置连接池tomcat 配置连接池tomcat 配置连接池tomcat 配置连接池tomcat 配置连接池
详细介绍tomcat连接池配置方法
很多朋友都问关tomcat连接池的配置,但网上很多资料说的不够详细,在这里我把我的配置方法发给大家,希望对大家有所帮助(版本:tomcat5.1.2)
tomcat连接池的使用文档,很适合java初学者使用!
一个简单的通过Tomcat连接池访问mysql数据库的jsp程序例子。
tomcat连接池的配置与性能测试
Tomcat连接池配置oracle,MSSQLserver数据库,以及在java应用程序的的引用,附带了 对应的jar包
mysql+tomcat连接池配置介绍
Tomcat6配置连接池很全面的东东
很好的配置tomcat连接池的方法 方便数据库连接 简单实用
tomcat 连接池的配置笔记以及测试源码 全局与局部,挺详细的,还有出错类型笔记.
tomcat连接池的配置例子
详细讲解tomcat 连接池数据库解密加密方法以及过程。
tomcat连接池 从5.0到6.0的tomcat连接池 从5.0到6.0的tomcat连接池 从5.0到6.0的tomcat连接池 从5.0到6.0的tomcat连接池 从5.0到6.0的tomcat连接池 从5.0到6.0的tomcat连接池 从5.0到6.0的tomcat连接池 从5.0到6.0的...
使用AES256加密技术实现tomcat7对连接池数据库密码加密解密,资源中包含加密小程序,小程序实现加密,tomcat中实现解密,方便客户自己修改数据库密码且是密文!支持多操作系统如:linux mac os 文件太多分成两部分请...
使用AES256加密技术实现tomcat7对连接池数据库密码加密解密,资源中包含加密小程序,小程序实现加密,tomcat中实现解密,方便客户自己修改数据库密码且是密文!
Tomcat5的数据库连接池配置Tomcat5的数据库连接池配置Tomcat5的数据库连接池配置Tomcat5的数据库连接池配置Tomcat5的数据库连接池配置Tomcat5的数据库连接池配置Tomcat5的数据库连接池配置Tomcat5的数据库连接池配置...