unreturnedConnectionTimeout

unreturnedConnectionTimeout

给定时间段后,参数unreturnedConnectionTimeout会使未返回的连接超时。我试图确定是否应该在生产persistence.xml中使用它?使用此功能的一大好处是,连接池将能够从泄漏的连接中恢复。一个很大的缺点是,很难检测到泄漏的连接。

我应该在生产应用程序中使用unreturnedConnectionTimeout吗?如果是,其价值应该是多少?我还应该考虑其他优点/缺点吗?

最佳答案

理想情况下,您应该调试Connection泄漏,然后不要在生产中使用unreturnedConnectionTimeout

要调试连接泄漏,请同时设置unreturnedConnectionTimeoutdebugUnreturnedConnectionStackTraces,请参见http://www.mchange.com/projects/c3p0/#configuring_to_debug_and_workaround_broken_clients(存档的here)。然后,当您不再有泄漏时,请取消设置这两个参数。

如果由于某种原因无法调试和修复连接泄漏的应用程序,则可以在生产环境中设置unreturnedConnectionTimeout,在这种情况下,仅设置unreturnedConnectionTimeout并让c3p0清除应用程序忘记的内容是一个合理的解决方法。

07-22 09:23