c3p0数据库连接池问题
我之前在我的程序里面使用了一个自己编写的数据库连接池,但程序常常莫名其妙的无法从池中取出新的连接,我以为是自己写的程序不对,所以下载了 c3p0作为新的数据库连接池库,但是问题依旧,开始工作的很好,但我重复访问几个从数据库中查询的页面以后,又出现了获取的Conncetion对象为空的问题,请问这是怎么回事?
是我c3p0设置的问题,程序的问题,或者是mysql的问题?
谢谢解答。
我之前在我的程序里面使用了一个自己编写的数据库连接池,但程序常常莫名其妙的无法从池中取出新的连接,我以为是自己写的程序不对,所以下载了 c3p0作为新的数据库连接池库,但是问题依旧,开始工作的很好,但我重复访问几个从数据库中查询的页面以后,又出现了获取的Conncetion对象为空的问题,请问这是怎么回事?
是我c3p0设置的问题,程序的问题,或者是mysql的问题?
谢谢解答。
我查看了一下c3p0的设置,我把初始池大小改成了20,并且修改了mysql的最大连接数为1000(够大了吧),在用show processlist;查看mysql连接状况的时候,发现c3p0确实只使用了20个连接,我发现我用getConnection返回的每个连接都是新建的连接,这个池根本没有返回已经创建的连接,所以达到20个最大连接数以后就无法继续创建了。我的创建代码是:
|
已经解决,有一个调用很频繁的查询没有释放。