java面试题网

普通会员

217

帖子

75

回复

160

积分

楼主
发表于 2019-05-05 17:45:44 | 查看: 5519| 回复: 1

数据库连接池的原理是什么

数据库连接池的原理是什么

wuliao

数据库连接池的原理

传统连接方式:

首先调用Class.forName()方法加载数据库驱动,

然后调用DriverManager.getConnection()方法建立连接.

连接池技术:

连接池解决方案是在应用程序启动时就预先建立多个数据库连接对象,然后将连接对象保存到连接池中。

当客户请求到来时,从池中取出一个连接对象为客户服务。

当请求完成时,客户程序调用close()方法,将连接对象放回池中.

对于多于连接池中连接数的请求,排队等待。

应用程序还可根据连接池中连接的使用率,动态增加或减少池中的连接数。


文章来自www.wityx.com,转载请注明出处!原文地址http://www.wityx.com/post/725_1_1.html


java面试题交流群:327440556      阿里云产品2000元通用优惠券限时领

普通会员

115

帖子

83

回复

169

积分
沙发
发表于 2019-09-26 16:23:56

关系数据库中连接池的机制是什么?
前提:为数据库连接建立一个缓冲池。
1:从连接池获取或创建可用连接
2:使用完毕之后,把连接返回给连接池
3:在系统关闭前,断开所有连接并释放连接占用的系统资源
4:能够处理无效连接,限制连接池中的连接总数不低于或者不超过某个限定值。
其中有几个概念需要大家理解:
最小连接数是连接池一直保持的数据连接。如果应用程序对数据库连接的使用量不大,将会有大量的数据库连接
资源被浪费掉。
最大连接数是连接池能申请的最大连接数。如果数据连接请求超过此数,后面的数据连接请求将被加入到等待队
列中,这会影响之后的数据库操作。
如果最小连接数与最大连接数相差太大,那么,最先的连接请求将会获利,之后超过最小连接数量的连接请求等
价于建立一个新的数据库连接。不过,这些大于最小连接数的数据库连接在使用完不会马上被释放,它将被放到连接
池中等待重复使用或是空闲超时后被释放。
上面的解释,可以这样理解:数据库池连接数量一直保持一个不少于最小连接数的数量,当数量不够时,数据库会
创建一些连接,直到一个最大连接数,之后连接数据库就会等待。  

您需要登录后才可以回帖 登录 | 立即注册

java面试题网www.wuliaokankan.cnjava建站系统提供技术支持V2.1 网站地图 © 2016-2018