关于Druid、HikariCP,网上一搜一大堆,我就不一一介绍了。想了解的可以问下AI。度娘都可以。
这里介绍下两者的区别,根据自己公司业务来选择对应的链接次,后续我在更新下,对应的连接池的配置
Druid数据库连接池简介及应用推广(老项目翻出来做下记录)
SpringBoot 2.0 中 HikariCP 数据库连接池原理解析_一百减一是零啊的博客-CSDN博客
# 数据库连接池选择:HikariCP vs Druid
## HikariCP
- 轻量级、高性能的数据库连接池。
- 占用较少的内存和CPU资源。
- 自动调整连接池大小。
- 支持快速的连接获取和释放。
- 提供了丰富的配置选项,可以根据应用需求进行调整。
## Druid
- 提供了丰富的监控和统计功能,可以实时查看数据库连接的使用情况。
- 支持连接池的动态调整,可以根据应用负载自动调整连接池大小。
- 提供了防止恶意攻击和SQL注入的功能。
- 支持数据库连接的健康检查,可以自动剔除不可用的连接。
- 提供了连接泄漏检测和慢查询日志等功能。
## 评判标准
- 性能
- HikariCP:高性能(其轻量级的设计和高效的连接获取和释放机制)
- Druid:性能较好,但功能较多可能影响性能
- 资源占用
- HikariCP:占用较少的内存和CPU资源(轻量级)
- Druid:可能占用较多的内存和CPU资源(提供了丰富的功能和监控统计)
- 功能和监控
- HikariCP:基本功能,缺少高级监控和统计(提供了基本的连接池功能)
- Druid:提供丰富的监控和统计功能(可以实时查看数据库连接的使用情况,对数据库连接的安全性有较高要求的场景)
- 配置和灵活性
- HikariCP:提供丰富的配置选项(根据应用需求进行调整)
- Druid:提供更多的配置选项(更细粒度的调整和配置)
## 结论
- 使用HikariCP:
- 对性能和资源占用有较高要求
- 高并发访问数据库的场景
- 需要快速的连接获取和释放的场景
- 使用Druid:
- 需要对数据库连接进行监控和统计
- 对数据库连接的安全性有较高要求
- 需要自动调整连接池大小的场景
- 需要连接泄漏检测和慢查询日志等功能的场景