SSH2+C3P0数据库资源耗尽错误记录
时间:2010-12-27 来源:xue2
添加了Spring,并使用C3P0作为数据库连接池,在进行测试的过程中,报错:An attempt by a client to checkout a Connection has timed out。
先使用Google检索,发现有的人说,
解决方案就是在配置文件里把:
<!--当连接池中的连接耗尽的时候c3p0一次同时获取的连接数。Default: 3 -->
<property name="acquireIncrement" value="5"/>
适当的增加一次性获得的连接数目方可解决此问题。
或者将
<property name="checkoutTimeout"><value>3000</value></property>
注释掉。
自己通过mysqladmin -uroot -p status命令检索threads个数,发现执行查询的过程中,个数总是5个5个的增加,怀疑查询完成后没有关掉数据库连接。仔细查了一下,发现很多地方使用了“Session session=getHibernateTemplate().getSessionFactory().openSession();”,然后完成之后,并没有session.close()关闭。
将所有相关地方使用了"session.close()",再进行测试,果然,threads不再增加。
相关阅读 更多 +
排行榜 更多 +