这里主要比较HikariCP 和阿里的Druid


springboot 现在官方默认的数据库连接池是 HikariCP,HikariCP的性能从测试的数据上来看也是最高的。

先来看下这个著名的issue

  • 一个印度小哥提的 issue
  • brettwooldridge 这边主要针对性能和在中国以外的地方用的少的问题


  • 温绍这边说,由于使用公平锁所以降低了性能,至于为什么是因为在生产环境中遇到的一些问题,使设计使然。

  • 温绍同时也强调我们淘宝体量大,并发高,顺便甩了个带有马爸爸照片的链接,让他了解一下淘宝

  • brettwooldridge 这边回应 :比量是吧?(内心潜台词)
  • wix.com托管着超过1.09亿个网站,每天处理的请求超过10亿个
  • Atlassian的产品拥有数百万的客户
  • HikariCP是使用Play框架,Slick,JOOS构建的每个应用的默认连接池
  • 老子现在是spring boot的默认连接池
  • HikariCP每月从中央Maven存储库中解析超过300,000次。


看完热闹,说回正题

  • 功能角度考虑,Druid 功能更全面,除具备连接池基本功能外,还支持sql级监控、扩展、SQL防注入等。最新版甚至有集群监控
  • 单从性能角度考虑,从数据上确实HikariCP要强,但Druid有更多、更久的生产实践,它可靠。
  • 单从监控角度考虑,如果我们有像skywalking、prometheus等组件是可以将监控能力交给这些的 HikariCP也可以将metrics暴露出去。

写在最后

由于我们的系统架构上有专门用于监控的系统(skywalking、prometheus),外加使用了阿里云的RDS,RDS也有完整数据库监控指标。所以我们可以将监控的功能交给这些系统,让数据库连接池专心做好连接池的本职工作,所以我们选择性能更好的 HikariCP 做为数据库连接池。由于我们使用了Spring boot ,HikariCP 是内置的,也更方便配置使用,能做到开箱即用

文章知识点与官方知识档案匹配,可进一步学习相关知识
MySQL入门技能树首页概览71583 人正在系统学习中

[转帖]数据库连接池选型 Druid vs HikariCP性能对比的更多相关文章

  1. 数据库连接池:Druid

    转自: http://www.cnblogs.com/windlaughing/p/3287501.html Java连接数据库方法概述 java.sql提供了一些接口和类,用于支持数据库增删改查等相 ...

  2. 数据库连接池——C3P0&Druid(快速入门)

    数据库连接池--C3P0&Druid (一) 数据库连接池 每一个事物都有其存在的意义,在初学jdbc的时候,我们建立数据库连接对象后,会对其进行释放,但是数据库连接的建立和关闭是非常消耗资源 ...

  3. 纠错帖:Zuul & Spring Cloud Gateway & Linkerd性能对比 (转载)

    纠错帖:Zuul & Spring Cloud Gateway & Linkerd性能对比  Spring Cloud  Spring Cloud Spring Cloud Gatew ...

  4. spring+mybatis+c3p0数据库连接池或druid连接池使用配置整理

    在系统性能优化的时候,或者说在进行代码开发的时候,多数人应该都知道一个很基本的原则,那就是保证功能正常良好的情况下,要尽量减少对数据库的操作. 据我所知,原因大概有这样两个: 一个是,一般情况下系统服 ...

  5. 第13章—数据库连接池(Druid)

    spring boot 系列学习记录:http://www.cnblogs.com/jinxiaohang/p/8111057.html 码云源码地址:https://gitee.com/jinxia ...

  6. 数据库连接池 c3p0 druid

    druid 数据库连接池 c3p0 使用C3P0数据源时需要依赖 mchange-commons-java-0.2.3.4.jar包.缺少该jar包则会报错!

  7. 技术杂记-改造具有监控功能的数据库连接池阿里Druid,支持simple-jndi,kettle

    kettle内置的jndi管理是simple-jndi,功能确实比较简单,我需要监控kettle性能,druid确实是很不错的选择,但没有提供对应的支持,我改进了druid源码,实现了simple-j ...

  8. 主流Java数据库连接池分析(C3P0,DBCP,TomcatPool,BoneCP,Druid)

    主流数据库连接池 常用的主流开源数据库连接池有C3P0.DBCP.Tomcat Jdbc Pool.BoneCP.Druid等 C3p0: 开源的JDBC连接池,实现了数据源和JNDI绑定,支持JDB ...

  9. springboot项目整合druid数据库连接池

    Druid连接池是阿里巴巴开源的数据库连接池项目,后来贡献给Apache开源: Druid的作用是负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个: D ...

  10. SpringBoot集成druid数据库连接池的简单使用

    简介 Druid是阿里巴巴旗下Java语言中最好的数据库连接池.Druid能够提供强大的监控和扩展功能. 官网: https://github.com/alibaba/druid/wiki/常见问题 ...

随机推荐

  1. f-VAEGAN-D2:VAE+GAN处理零样本学习问题

    虽然f-VAEGAN-D2在题目中说"适用任意样本",但对比的Few-shot相关的实验较少,这里仅讨论零样本学习的情况. 1. 背景介绍 由于为每个对象收集足够数量的高质量带标签 ...

  2. javacv实现屏幕录制(一)

    javacv实现屏幕录制(一) javacv从入门到入土系列,发现了个好玩的东西,视频处理,于是我想搞个屏幕录屏,我百度了一下,copy那些代码我没有实现过,那些代码也没有说明,只好去官网看文档找资料 ...

  3. 基于Fabric的性能测试与调优实践

    摘要:本文聚焦Fabric核心业务,构建一个测试模型,对社区原生的Fabric和华为云区块链(基于Fabric)进行实测,识别社区原生Fabric的性能瓶颈,并尝试通过华为区块链提供的动态伸缩.快速P ...

  4. AI开发效率低,你可以试试华为NAIE AutoML

    摘要:为解决AI工程师在开发AI应用场景所遇到的问题,NAIE平台落地AutoML框架(工具)来辅助大家更高效.更迅速解决AI开发问题. 你是不是还在为掌握的AI算法少而烦恼? 你是不是还在为选择某个 ...

  5. Java反射机制清空字符串导致业务异常分析

    摘要:笔者在处理业务线问题时遇到接口返回的内容和实际内容不一致的现象. 本文分享自华为云社区<Java反射机制清空字符串导致业务异常分析>,作者:毕昇小助手. 编者按:笔者在处理业务线问题 ...

  6. 1500万员工轻松管理,云原生数据库GaussDB让HR办公更高效

    摘要: 云原生数据库GaussDB助力"2号人事部"打造高品质HR效率软件 本文分享自华为云社区<1500万员工轻松管理,云原生数据库GaussDB让HR办公更高效>, ...

  7. 插件化架构设计(3):前端可视化化平台插件架构-grafana实践

    插件实践方案 其实插件你就把它当一个组件来用就好.用起来就是异步组件加载. vue异步组件加载,看官方文档:https://cn.vuejs.org/v2/guide/components-dynam ...

  8. 我教你解决 Ubuntu 常见的三个问题:Window和Ubuntu无法复制,有另一个软件包管理程序正在运行、无法获得锁 /var/lib/apt/lists/lock - open (11: 资源暂时不可用)

    第一个问题:当自己遇到这个问题的时候,查阅很多资料,发现很多需要安装一大推东西,又是安装,又是重启,最后还是没有搞定.最后还是通过这三行命令搞定了.sudo apt-get autoremove op ...

  9. Solon 开发进阶,四、启动参数说明

    Solon 开发进阶 一.插件扩展机制 二.体外扩展机制 三.常用配置说明 四.启动参数说明 五.全局异常订阅 启动参数,在应用启动后会被静态化(为了内部更高效的利用).比如,想通过体外扩展加载配置, ...

  10. Typora 一行显示多图

    图片下显示说明 ![](https://pic.cnblogs.com/avatar/80824/20200328151729.png) <center style="font-siz ...