C3P0:在生产环境中使用unreturnedConnectionTimeout?

6
参数unreturnedConnectionTimeout会在一定时间内超时未返回的连接。我正在考虑是否应该在生产的persistence.xml中使用它?使用它的一个重要优点是连接池可以从泄漏的连接中恢复过来。不过,其中一个重要缺点是泄漏的连接很难检测到。
在生产应用中,我应该使用unreturnedConnectionTimeout吗?如果是,它的值应该是多少?还有其他的优缺点需要考虑吗?
1个回答

7

您应该调试您的连接泄漏,并且最好不要在生产环境中使用 unreturnedConnectionTimeout

为了调试连接泄漏,请同时设置 unreturnedConnectionTimeoutdebugUnreturnedConnectionStackTraces,请参见 http://www.mchange.com/projects/c3p0/#configuring_to_debug_and_workaround_broken_clients(存档链接在此)。然后,当您没有更多的泄漏时,请取消这两个参数的设置。

您只有在某些情况下无法调试和修复连接泄漏的应用程序时,才会在生产环境中设置 unreturnedConnectionTimeout,在这种情况下,将 unreturnedConnectionTimeout 设置为一个合理的解决方法,让 c3p0 清理您的应用程序忘记的内容。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接