从BoneCP到HikariCP
今天笔者本想更新一下项目中使用到的BoneCP版本的。却无意发现jolbox网站打不开了。起初以为是被墙掉了,经过一番查找,居然在BoneCP的Github站看到了如下的一段话:
BoneCP的作者不知何时修改了简述。(ps:红色框中的部分意思:虽然BoneCP性能优于老旧的C3PO和DBCP连接池,但是现在应该被舍弃了,以迎接HikariCP)
作者词语之间充满了悲凉之感,好比当年的少年侠客,风流倜傥,如今已是迟暮之年,不得不退出江湖,何其悲凉。
在笔者胡乱感伤一通过后,那么问题就来了。
HikariCP是虾米?
HikariCP是一个高效的数据库连接池。
One Connection Cycle is defined as singleDataSource.getConnection()/Connection.close().
In Unconstrained benchmark, connections > threads.
In Constrained benchmark, threads > connections (2:1).
One Statement Cycle is defined as singleConnection.prepareStatement(),Statement.execute(),Statement.close().
1 Versions: HikariCP 2.1.0, BoneCP 0.8.0, Tomcat 8.0.9, Vibur 1.2.0, C3P0 0.9.5-pre8, Java 8u20
2 Java options: -server -XX:+AggressiveOpts -XX:+UseFastAccessorMethods -Xmx512m
从HikariCP网站给出的对比图来看。其性能相比于BoneCP有了质的变化,革命性的变更。
笔者因为使用了Spring框架。所以更换使用HikariCP相当简单,只要将原本BoneCP的配置信息修改一下就好了。详细见下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Ps:笔者也是首次使用HikariCP类库。具体的性能和优越性暂时还不好下定论。但是相信HikariCP开发组能发表这样的对比图,想来未必是空穴来风,暂时使用一下,过段时间再来完善性能是否如图表所示。持续关注中。
Maven :
【JDK1.8】
1
2 com.zaxxer
3 HikariCP
4 2.1.0
5 compile
6
【JDK1.6和1.7】:
1
2 com.zaxxer
3 HikariCP-java6
4 2.1.0
5 compile
6
作者:TinyZ出处:http://www.cnblogs.com/zou90512/
关于作者:从事于网络游戏服务端开发(JAVA)。喜欢接触和了解新技术。通过不断探索学习,提升自身价值。记录经验分享。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接
如有问题,可以通过 zou90512@126.com