c3p0 vs. bonecp

来源:互联网 发布:共产 革命 知乎 编辑:程序博客网 时间:2024/06/04 23:21

有同事推荐BoneCP,网上搜一下benchmark结果也很是惊人,最近用连接池想到换成BoneCP。但是,经过我自己的使用和测试,我又换回了c3p0,原因有二:

1.bonecp在高并发下的稳定性不如c3p0,其它完全一样的条件(web层Jersey,数据层postgresql),使用bonecp时的吞吐量多次测量结果的波动比c3p0明显要大,同时在性能上两者并没有本质区别,并没有出现bonecp明显胜出的情况,c3p0的连接池热身甚至更快一些。

2. bonecp的Datasource不支持自动重连(或许我没找到),这非常要命,我测试的时候手动重启了一下数据库,c3p0很正常地重连上了,bonecp就彻底没反应了。

据我所知,oschina曾经也尝试过切换到bonecp,后来据说因为一些bug换了回来。我自己的感觉与此类似,即使bonecp自称使用了更新的concurrent特性,因此有更好的性能,但是我自己得到的结果并不与之非常符合。

原创粉丝点击