我们的网站每天获得大约 100 万的 pv,我们肯定会使用 Tomcat。
我找不到太多关于jdbc-pool的信息,不确定它是否足够稳定以用于生产。有人有这方面的经验吗?和任何配置/调整的东西供参考?
正如有人提到的,BoneCP可能是另一种选择。但似乎它已经停产了(很伤心......)。会是更好的选择吗?
顺便说一句,HikariCP太年轻了,我会留意它,因为它是我发现的最新/最快的 CP。
感谢您的任何建议。
我是 HikariCP 的作者之一。也就是说,“新”Tomcat 池是我们测试过的最好的池之一。它有很多选项,因此如果您打算在生产中使用它,请确保您了解它们以获得可靠的配置。
不要将新的 Tomcat 池与我会避免的 Apache DBCP 混淆。
我们正在开始对包括 HikariCP 在内的各种池进行滥用测试,并进行测试,例如在池下反弹数据库并测量由此产生的恢复。在接下来的几周内查看网站的结果。
编辑:回复:HikariCP 太年轻了。虽然它可能是年轻的,但它已经完成了数十亿笔交易。与任何事情一样,我建议您在部署之前在预生产环境中尝试它。但同样适用于您可能选择的任何游泳池。
2015 年 6 月 1 日更新:我想稍微修改一下上面的声明,似乎 Apache Commons DBCP 再次处于活动状态,并且已经接管了专用/分叉的 Tomcat DBCP。Commons DBCP 中的重构乍一看似乎很重要,而且是积极的。然而,由于它们的规模,并且尽管处于旧的 Commons DBCP 旗帜下,我认为该池在这一点上不如 HikariCP 成熟。
BoneCP 没有停产,但考虑到它 @Deprecated 现在 HikariCP 已经存在了;既然即将出现更好的东西,那么为其提供大量资源就没有什么意义了。这是开源的,所以让我们一起努力寻找最佳解决方案。来源:我(BoneCP作者)
Tomcat DBCP 已准备好生产 - 它只是 commons DBCP 的演变。
DB conn 池是非常简单的野兽——我不认为它的使用特别危险。
这就是我工作的公司正在使用的,我们没有遇到任何问题。
我们的 Web 服务器与各种数据服务器的连接比 Tomcat 的连接池的速度更受限制,所以除非速度非常重要,否则您可能不应该关心它。就可靠性而言,它在我们的任何测试中都没有断开连接,我们也没有听说它发生在我们的生产站点上。
如果您使用Tomcat的连接池,我怀疑您会遇到问题。
在我工作的地方,我们有几个系统在 Tomcat 池上运行。
我必须说,最初很难很好地理解它提供的所有选项以及它们的值如何实际影响性能和可靠性。
在执行了初步的试错阶段之后,我不得不承认 Tomcat 连接池非常适合我们的需求。它看起来很健壮,也没有引起任何性能问题。
话虽如此,我一定会在我的下一个项目中尝试 HikariCP