BeeCP2.4.4 发布,高性能 JDBC 连接池

栏目: 软件资讯 · 发布时间: 4年前

内容简介:BeeCP(小蜜蜂连接池)2.4.4版本连接安全关闭优化,涉及以下几个点 1: Connection.close增加同步处理 如果多线程并发调用该方法,只能有一个能执行成功,其他失败。 * Connection.close方法的背后,就是触发连接释...

BeeCP(小蜜蜂连接池)2.4.4版本连接安全关闭优化,涉及以下几个点


1: Connection.close增加同步处理
  如果多线程并发调用该方法,只能有一个能执行成功,其他失败。

  * Connection.close方法的背后,就是触发连接释放,并传递给等待者。不清楚 光连接池,Tomcat-JDBC等主流连接池是否存在这个问题?不增加安全措施,一个连接可能会被释放多次,有可能传递给多个等待者,想想同一个连接被多个线程借走后,后果严重不?,这个发布算是给大家一个提醒/预警。

2:借用者持有连接并长时间不使用,因此池强制回收

    在连接池强制回收的那一刻,持有线程是有可能突然归还连接的,在这一刻点(临界点并发)上讲:要么成功回收,要么借用者成功释放

3:连接池重置,清空所有连接,强制关闭所有连接

  对于正在使用中连接,依据策略进行关闭  A:等它释放后再关闭,B:直接关闭它,这个过程通样存在临界点并发问题 ,因此需要安全性关闭


补充说明:通过连接池获取的对象,实际上是物理Connection代理对象,这里所说的关闭针对这个代理对象的处理(砍断它与物理连接之间的关系),加上安全关闭策略,连接池性能肯定会下降。

 


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Lua设计与实现

Lua设计与实现

codedump / 人民邮电出版社 / 2017-8 / 49.00元

本书首先介绍了Lua中的数据结构,比如通用数据是如何表示的、Lua的字符串以及表类型的实现原理,接着讨论了Lua虚拟机的实现,并且将其中重点的一些指令进行了分类讲解,最后讨论了垃圾回收、模块实现、热更新、协程等的实现原理。一起来看看 《Lua设计与实现》 这本书的介绍吧!

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具