什么是数据库连接池

数据库连接池(Connection pooling)是程序启动时建立足够的数据库连接,并将这些连接组成一个连接池,由程序动态地对池中的连接进行申请,使用,释放

数据库连接池的运行机制

(1) 程序初始化时创建连接池
(2) 使用时向连接池申请可用连接
(3) 使用完毕,将连接返还给连接池
(4) 程序退出时,断开所有连接,并释放资源

开源数据库连接池

1 dbcp

dbcp可能是使用最多的开源连接池,原因大概是因为配置方便,而且很多开源和tomcat应用例子都是使用的这个连接池
这个连接池可以设置最大和最小连接,连接等待时间等,基本功能都有。这个连接池的配置参见附件压缩包中的:dbcp.xml
使用评价:在具体项目应用中,发现此连接池的持续运行的稳定性还是可以,不过速度稍慢,在大并发量的压力下稳定性
有所下降,此外不提供连接池监控

2 c3p0

c3p0是另外一个开源的连接池,在业界也是比较有名的,这个连接池可以设置最大和最小连接,连接等待时间等,基本功能都有。
这个连接池的配置参见附件压缩包中的:c3p0.xml。
使用评价:在具体项目应用中,发现此连接池的持续运行的稳定性相当不错,在大并发量的压力下稳定性也有一定保证,
          此外不提供连接池监控。

3 proxool

proxool这个连接池可能用到的人比较少,但也有一定知名度,这个连接池可以设置最大和最小连接,连接等待时间等,基本功能都有
这个连接池的配置参见附件压缩包中的:proxool.xml。
使用评价:在具体项目应用中,发现此连接池的持续运行的稳定性有一定问题,有一个需要长时间跑批的任务场景任务,同样的代码
在另外2个开源连接池中成功结束,但在proxool中出现异常退出
但是proxool有一个优势--连接池监控

4  Druid

阿里巴巴推出的国产数据库连接池,据网上测试对比,比目前的DBCP或C3P0数据库连接池性能更好

商业中间件连接池

1 weblogic的连接池

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

2 websphere的连接池

还是先来段题外话:记得有人说过,websphere只有版本6以后才算是websphere,个人很赞同。websphere 5以及以前的版本。。。还是忘了吧。
其实websphere的连接池秉承ibm一贯的风格:功能强大,使用复杂:)
使用评价:在具体项目应用中,此连接池的持续运行的稳定性相当强,在大并发量的压力下性能也足够优秀,另外在一些异常情况下连接池里的连接能够及时释放,
          连接池监控配置有些复杂,但是配置好后各项指标一目了然并且有图形显示

最新文章

  1. QTableWidget去除选中虚边框
  2. sphinx索引分析续
  3. CSDN数据库被爆 统计CSDN用户都喜欢哪些密码
  4. windows加入path路径
  5. RT-Thread信号量实际运用—按键点灯
  6. java动态代理与老式AOP实现
  7. 08_Spring实现action调用service,service调用dao的过程
  8. Shell编程练习
  9. m个相同苹果放的n个相同盘子中的算法
  10. 基于visual Studio2013解决C语言竞赛题之0601判断素数函数
  11. Directx11 xnamath.h 报错
  12. Solr vs. Elasticsearch谁是开源搜索引擎王者
  13. nopcommerce数据库字典
  14. Python之os.fork
  15. C# 构造器总结
  16. BZOJ 3270: 博物馆 [概率DP 高斯消元]
  17. 常见的Git命令
  18. PythonStudy——内存管理之垃圾回收 Memory management Garbage collection
  19. Cross-site request forgery 跨站请求伪造
  20. jqgrid 配置分页大小及下拉项

热门文章

  1. win10系统优化
  2. Caused by: java.lang.ClassCastException: org.springframework.web.SpringServletContainerInitializer cannot be cast to javax.servlet.ServletContainerInitializer。。。。。检查一下servlet-api是否冲突了?
  3. Asp.Net页面刷新防止跳转到其他浏览器或新的选项卡
  4. RabbitMQ系列(二)环境搭建
  5. 基础html页面结构
  6. 原生ajax中readyState中的含义以及HTTP协议状态码的含义
  7. JavaWeb 分层设计、MVC
  8. FPM 1.1正式版 Search & List
  9. vmware关闭嘟嘟嘟嘟警告
  10. Linux Firewalld 基础实例