Scala连接池库?

6

我正在尝试在一个新的Scala项目中使用Squeryl。这是我第一个Scala项目,因此我正在寻找一个良好的Scala库来处理连接池。当然,我也可以使用Java库。哪个Java库最适合SQueryl?在Java库中,我考虑使用DBCP、C3P0、Proxool和BoneCP,BoneCP看起来是一个严肃的候选者,因为它们的基准测试结果很不错。


我发现BoneCP不太稳定,而DBCP更加稳定...但是你的情况可能不同。BoneCP网站甚至有一半的时间都无法正常工作... - bwawok
我发现DBCP是最不可靠的。 - Adam Gent
所以,如果BoneCP和DBCP都不太可靠,对Proxool没有评论,而对C3P0有好评,我想我会尝试一下C3P0! - DrKarl
你能证明BoneCP是“不稳定”的吗?这绝对不是我得到的反馈,更不用说现在只有一个未解决的bug。至于网站,你可以责怪主机提供商——他们承诺99%以上的正常运行时间,但这显然是不真实的。 - wwadge
BoneCP 给我的应用程序(基于 Spring Batch)带来了随机挂起的问题,并且比 DBCP 慢了 10%。我对这两个项目都没有偏见,也没有为任何一个项目做出贡献......只是在我个人的高性能项目中,DBCP 的表现很好,而 BoneCP 则不行。在其他情况下可能会相反,测试一下不需要太长时间...... - bwawok
这是哪个版本?我还没有收到任何报告声称池导致了挂起,也没有任何基准测试表明在任何情况下dbcp更快。老实说,我很困惑,不是想挑起争端 :-) - wwadge
3个回答

5

我在生产环境中使用了很多年的C3P0,一直非常可靠。但是要注意你的数据库驱动程序,它们可能会非常不稳定。


好的谢谢。我打算使用MariaDB,它是MySQL的一个可替代版本。 - DrKarl
2
@DrKarl - 你为什么要首选像MySql这样的东西呢?如果你确定了数据库的使用方式,voltdb和luciddb都比它表现得更好。PostgreSQL是一种全面更好的通用数据库,而NoSQL解决方案则更适合某些数据结构。如果你已经准备从MySql转移,那么明智的做法是认真考虑所有选项。 - Kevin Wright
@Kevin - 我通过Hacker News了解了VoltDB,但我不知道LucidDB,谢谢你的提示!我还没有考虑过NoSQL用于这个项目,PostgreSQL可能是另一个不错的选择。无论如何,我已经读到了关于MariaDB和Drizzle的好消息,也听说过Firebird的好处... - DrKarl
@Viktor Klang,有趣的是PlayFramework选择了BoneCp。 PlayFramework在未来方面提供了有趣的方面,例如Akka:),Scala,BoneCp,Config等。 - Cemo

3

1

我知道这是一个旧帖子,但为了保持答案的时效性,如果您需要连接池并且正在编写在JVM上运行的应用程序,我建议使用HikariCP


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