数据库连接池:Druid 和 HikarCP

数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。在项目中,开发人员都会选择一个数据库连接池来管理数据库连接问题。数据库连接池和线程池类似。

在现在流行的数据库连接池有 druid、hikarCP、c3p0、dbcp、jdbc等主流的数据库连接池。网上说这些数据库连接池的性能:hikariCP > druid > tomcat-jdbc > dbcp > c3p0。但是在国内,不知道别的公司使用的数据库连接池使用的是什么,但是本人在接触中使用最多的是 druid,这是由阿里开源的数据库连接池,经受阿里膨大的数据考验,其性能可以说非常不错。对于 HikarCP,本人之前没有接触过,只是最近看到spring boot 2.0 默认数据库连接池是 HikarCP。

对于公司项目来说,综合性能,扩展性等方面,可考虑使用druid或者hikariCP连接池。druid 功能最为全面,sql 拦截等功能,统计数据较为全面,具有良好的扩展性。这里有一篇博客比较详细的将了两者的区别:数据库连接池性能测试(hikariCP、druid、tomcat-jdbc、dbcp、c3p0) 转

Druid和HikarCP的争议,感兴趣的可以看下,挺有意思的。

源码

博主 wechat
钟意作者
客官,赏一杯coffee嘛~~~~
0%