为什么 BoneCP 连接池的性能这么高呢?

2024-11-20 21:45:39
推荐回答(1个)
回答1:

为什么呢?Java连接池发展了这么久,基本上已经都很稳定了,你看 C3P0 和 DBCP 都不再发布新版本了。而 BoneCP出彩的地方就是跟进了技术的最新进展。研究它的源码,发现有两个主要原因:1. BoneCP 不用 synchronized 关键字来处理多线程对资源的争用,而是使用 java.util.concurrent 包中的锁机制,这个包是在 JDK 1.5 才开始有的;2. 分区机制,尽管使用了锁,但还是存在着资源争用的问题,因此 BoneCP 可配置多个连接池分区,每个分区独立管理,互不影响。尽管连接池的性能并不会是一个系统中的瓶颈,但是我们单纯从连接池这个角度来看 BoneCP ,也是值得我们去学习的。