DBCP连接回收问题

Posted 秋夜雨巷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DBCP连接回收问题相关的知识,希望对你有一定的参考价值。

DBCP

官网:http://commons.apache.org/proper/commons-dbcp/

问题

每次请求Http接口mysql都会新建一个Connection,很明显没有从连接池中取Connection,反而池里的连接占着不用浪费了空间,直到Connection的数量超过maxActive报错,然后再重启,永远发现不了问题。。。

SELECT id, db, user, host, command, time, state, info 
from information_schema.PROCESSLIST
WHERE 1=1 
-- and command != \'Sleep\'
 AND HOST LIKE \'%localhost%\'
order BY id 

使用完BasicDataSource连接池获取的连接后,要在finally中调用close()方法,close()方法被重写后作用变成了手动将连接返还给连接池。

 

除了手动调用立刻回收到连接池中的方法外,还有配置指定时间回收到连接池,待研究。

 

以上是关于DBCP连接回收问题的主要内容,如果未能解决你的问题,请参考以下文章

DBCP连接池配置参数

DBCP数据库连接池的简单使用

DBCP数据库连接池的简单使用

dbcp数据库连接池管理

DBCP2的使用例子和源码详解(包括JNDI和JTA支持的使用)

spring02