DBCP:removeAbandoned VS驱逐

时间:2011-07-06 01:38:15

标签: java mysql database connection-pooling apache-commons-dbcp

我无法弄清楚 removeAbandoned 驱逐之间的区别。我在某处读过removeAbandoned已被弃用,但官方文档(http://commons.apache.org/dbcp/configuration.html)中没有提到它。

所以,如果有人能够启发我,我将不胜感激:)

谢谢!

1 个答案:

答案 0 :(得分:24)

它们意味着不同的东西:

  • “eviction”发生在应用程序未使用数据库连接(池中空闲)足够长的时间段时,它被丢弃
  • “废弃连接”是指在某些时间段后应用程序仍在使用的数据库连接,通常足够长以指示连接正在泄漏

驱逐并不表示您的代码存在问题(只是应用程序在连接突发后需要更少的连接)但是放弃连接意味着应用程序正在保持连接并且没有返回池。