我正在编写新的DB连接代码,并想尝试使用proxool作为连接池实现者。
通常,程序员会确保每个DriverManager.getConnection(.)后面跟着一个connection.close()。
但是当使用Proxool时,是否需要更好的选择?我很困惑,因为:
这里的proxool文档(http://proxool.sourceforge.net/quickStart.html)显示正在调用的close(),但是,
我在某个地方读到proxool添加了关闭挂钩,当程序退出时关闭所有连接。
我的程序最关心的是性能(高达200 DB写/秒),因此我不确定Proxool的getConnection()/close()将如何影响性能。
我的问题是:
提前谢谢。
发布于 2009-08-14 02:52:23
数据库池通常是子类/修饰连接,这样如果应用程序调用了close()方法,它实际上不会关闭连接,而是将其释放回池中。这是因为性能方面的原因,因为每次建立新连接都会花费很大的代价,同时也是为了提高用户/连接比率。
也就是说,DO需要调用connection.close(),从而让池知道您不再使用它,并且可以将它提供给请求它的下一个线程。
https://stackoverflow.com/questions/1275767
复制相似问题