首页 > 数据库技术 > 详细

浅谈各种数据库连接池

时间:2017-01-03 20:41:22      阅读:297      评论:0      收藏:0      [点我收藏+]
  1.   各种常用的数据库连接池罗列

 

开源的免费连接池:

DBCP  C3P0  Proxool  Druid  Jakarta  DDConnectionBroker  BoneCP

XAPool  Primrose  SmartPool  MiniConnectionPoolManager 

 

商业的中间件连接池:

weblogic的连接池   websphere的连接池

 

 

2. 常用的连接池比较:

 

DBCP可能是最常用的开源连接池,常用的原因一是配置比较方便,二是很多开源和tomcat的例子基本都是使用DBCP连接池。

该连接池的基本功能都有,比如配置最大和最小的连接数,连接等待时间等。

性能:在项目中测试,此连接池的持续运行的稳定性还是可以,但速度稍慢,在高并发的压力下稳定性有所下降,不提供连接池监控。

 

 

C3P0也是常用的一款开源的连接池,在开发中用的也比较多,基本功能齐全。

性能:在项目中测试,发现此连接池的持续运行的稳定性相当不错,在高并发的压力下稳定性也有一定的保证,但不提供连接池监控

 

 

Proxool这个连接池可能较少有人使用,但其提供连接池监控也有一定的知名度,基本功能齐全。

性能:在项目中测试,此连接池的持续运行稳定性有一定的问题,但是因为他具备监控功能,很多时候会用在开发测试的阶段,有助于确定是否有连接没有被关掉等来排除代码的一些性能问题。

 

 

上面的三种都是开源的连接池的比较,如果有机会使用商业的中间件连接池的话,开源的可以直接忽略掉,因为花钱的东西和免费的东西完全不在一个量级。

简单的说下weblogic连接池,基本配置可以在网上查,这里说下weblogic连接池Test Reserved Connections(对取得的连接进行测试)和Test Released Connections(对释放的连接进行测试)这两个选项,有时候在系统压力大的时候会出现连接失效的异常,使用该连接池就会避免这个问题,因为Test Reserved Connections和Test Released Connections在每次连接和释放的时候都会帮我们先测试,一旦检查到连接是无效的他会废弃掉还给数据库,只给你有效的。

性能:在具体项目应用中,此连接池的持续运行的稳定性强,在高并发的压力下性能也相当优秀,在一些异常情况下连接池里的连接也能够及时释放。连接池监控一目了然,及时到位。

3Druid数据库连接池

Druid 是阿里的一款数据库连接池,也是我们项目中使用的数据库连接池,所以单独拿出来说一下,据阿里介绍,druid是目前开源中最好的连接池,在功能,性能,可扩展性方面远胜于其他的数据库连接池,并且druid已经部署了超过7000个阿里应用,经过长时间生产环境大规模部署的严苛考验 ,这话有没有水分很难说,但确实有它的优点:

  1. druid 内置了一个功能强大的statfilter插件,能够详细统计sql的执行性能,这可以帮助我们对线上访问数据库性能进行分析。
  2. 直接把数据库密码写在配置文件中是一个不好的行为,容易导致数据库安全问题,DruidDataSource支持PasswordCallBack可以解决这一问题。
  3. Druid提供了不同的LogFilter,可以根据情况选择。
  4. 如果对JDBC层有编程的需求,可以通过Druid提供的Filter机制,编写JDBC层的扩展插件。

所以说Druid是集合了众多数据库连接池的优点,同时还加入了日志监控。

浅谈各种数据库连接池

原文:http://www.cnblogs.com/fyboke/p/6245951.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!