可用于Java/JDBC的最佳连接池库是什么?

我正在考虑两个主要候选人(免费/开源):

我在博客和其他论坛上读到了很多关于他们的信息,但无法做出决定.

除了这两个,还有其他相关的 Select 吗?

推荐答案

DBCP已经过时,不是生产级产品.不久前,我们对这两种产品进行了内部分析,创建了一个测试fixture ,该fixture 针对这两种产品生成负载和并发性,以判断它们在现实生活条件下的适用性.

DBCP始终在我们的测试应用程序中生成异常,并努力达到C3P0完全能够在没有任何异常的情况下处理的性能水平.

C3P0在恢复时也能很好地处理数据库断开和透明的重新连接,而DBCP如果从其下方取出链接,则永远无法恢复连接.更糟糕的是,DBCP将连接对象返回到基础传输已中断的应用程序.

从那时起,我们已经在4个主要的重载消费者Web应用程序中使用了C3P0,并且再也没有回头看过.

UPDATE:事实证明,经过多年坐在架子上,apache 公地居民已经拿了DBCP out of dormancy个,现在,它再次成为一个积极开发的项目.因此,我原来的帖子可能已经过时了.

这就是说,我还没有体验到这个新升级的库的性能,也没有听说它在最近的任何应用程序框架中都是事实.

Java相关问答推荐

判断大写字符串的Java方法总是返回假

计算战舰沉船/船只的问题(Java)

Cosmos Change Feed Process Lag远远超过收集中的记录数量

如何在Android上获取来电信息

Android Studio—java—在onBindViewHolder中,将断点和空白添加到BackclerView中

使用JdkClientHttpRequestFactory通过Spring RestClient和Wiemock读取时达到EOF

如何调用Firebase Realtime Database中的子图像列表到android studio中的回收器视图?

为什么我们不能实现两个接口,其中一个接口有相同的签名,其中一个接口有默认的实现在java?'

对运行在GraalVM-21上的JavaFX应用程序使用分代ZGC会警告不支持JVMCI,为什么?

条件加载@ManyToMany JPA

R.id.main给我一个红色错误,无法解析MainActivity.java中的符号main

内存中的H2修剪尾随空格

Jolt变换JSON数组问题

在Eclipse中调试未导出的JDK模块的Java包

FETCH类型设置为LAZY,但它仍会发送第二个请求

通过Java列表中的某些字段搜索值

对从Spring Boot 3.1.5升级到3.2.0的方法的查询验证失败

为什么使用lo索引来解决二进制搜索问题不同于使用hi索引?

控制器建议异常处理

如何在更改分辨率时将鼠标坐标计算为世界坐标