背景
对现有的数据库连接池做调研对比,综合性能,可靠性,稳定性,扩展性等因素选出推荐出最优的数据库连接池 。
NOTE: 本文所有测试均是mysql库
测试结论
1:性能方面 hikariCP>druid>tomcat-jdbc>dbcp>c3p0 。hikariCP的高性能得益于最大限度的避免锁竞争。
2:druid功能最为全面,sql拦截等功能,统计数据较为全面,具有良好的扩展性。
3:综合性能,扩展性等方面,可考虑使用druid或者hikariCP连接池。
4:可开启prepareStatement缓存,对性能会有大概20%的提升。
功能对比
功能
dbcp
druid
c3p0
tomcat-jdbc
HikariCP
是否支持PSCache
是
是
是
否
否
监控
jmx
jmx/log/http
jmx,log
jmx
jmx
扩展性
弱
好
弱
弱
弱
sql拦截及解析
无
支持
无
无
无
代码
简单
中等
复杂
简单
简单
更新时间
2015.8.6