我评估了UCP 11.2.0.1作为我们的传统连接池的替代品,我不能推荐它:
>它不完全支持jdk 6 / ojdbc6.jar。例如,使用语句缓存和jmx-support不适用于java 6并抛出异常。
> no internal statement cache – 它依赖于jdbc驱动程序的语句缓存(setPoolable())
>我将这两个问题提交给oracle,他们证实了这一点,并且可能会在oracle 12.0发布时修复它。但即使这不是肯定的。
>发行量太少(3年内有2个版本),社区支持太少。
>不是开源
>可扩展性只有几个回调与可怕的界面设计。
示例:当连接超过TTL时,您希望收到通知?准备封装DataSource和大量使用内部/专有UCP API。官方文档(最后更新:2008)保持沉默如何归档。
>脂肪设计(几乎是一个0.5 MB的jar) – 许多具有相似名称/功能的类(例如,有一个PoolDataSource和一个ConnectionPool)都是相关的,但调用不同,提供略有不同的功能。)
>仅限java.util.logging
更新1(2014年4月):
虽然稍微偏离主题:由于我的评估结果,我决定使用新的tomcat jdbc-pool,而且它在几个生产系统中一年来几乎完美无缺。它的设计很好,定期更新,可扩展,apache tomcat团队做了一个good job in responding to questions/fixing issues。
更新2(2016年7月):
我现在可以强烈推荐HikariCP,我正在赞成所有其他连接池。其建筑,专注于正确性和性能是惊人的。