数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。

具体工作机制如下
数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接数来设定的。无论这些数据库连接是否被使用,连接池都将一直保证至少拥有这么多的连接数量。
连接池的最大数据库连接数量限定了这个连接池能占有的最大连接数,当应用程序向连接池请求的连接数超过最大连接数量时,这些请求将被加入到等待队列中。

数据库连接池的最小连接数和最大连接数的设置要考虑到下列几个因素:1) 最小连接数是连接池一直保持的数据库连接,所以如果应用程序对数据库连接的使用量不大,将会有大量的数据库连接资源被浪费;2) 最大连接数是连接池能申请的最大连接数,如果数据库连接请求超过此数,后面的数据库连接请求将被加入到等待队列中,这会影响之后的数据库操作。3) 如果最小连接数与最大连接数相差太大,那么最先的连接请求将会获利,之后超过最小连接数量的连接请求等价于建立一个新的数据库连接。不过,这些大于最小连接数的数据库连接在使用完不会马上被释放,它将被放到连接池中等待重复使用或是空闲超时后被释放。

说出数据连接池的工作机制是什么?相关推荐

  1. 数据连接池的工作机制是什么

    数据连接池是把数据库连接放到中间服务器上,比如tomcat上,那么相当于每次你操作数据库的时候就不需要再"连接"到数据库再进行相关操作,而是直接操作服务器上的"连接池&q ...

  2. 数据连接池的工作机制是什么?

    以典型的数据库连接池为例: 首先普通的数据库访问是这样的:程序和数据库建立连接,发送数据操作的指令,完成后断开连接.等下一次请求的时候重复这个过程,即每个请求都需要和数据库建立连接和断开连接,这样当数 ...

  3. c#打开数据库连接池的工作机制_详解数据库连接池概念、原理、运行机制等

    概述 数据库连接池是负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个.那么其中的运行机制又是怎样的呢?今天主要介绍一下数据库连接池原理和常用的连接池. ...

  4. mysql连接池的工作原理_连接池工作原理

    连接池工作原理 连接池技术的核心思想是连接复用,通过建立一个数据库连接池以及一套连接使用.分配和管理策略,使得该连接池中的连接可以得到高效.安全的复用,避免了数据库连接频繁建立.关闭的开销. 连接池的 ...

  5. JdbcTemplate(1)(数据连接池)

    一.环境准备 1.1 导入JAR包 ①IOC容器所需要的JAR包 commons-logging-1.1.1.jar spring-beans-4.0.0.RELEASE.jar spring-con ...

  6. Netbeans 中创建数据连接池和数据源步骤(及解决无法ping通问题)

    1.启动glassfish服务器, 在浏览器的地址栏中输入 http://localhost:4848 2.首先建立JDBC Connection Pools: 3.new 一个Connectio P ...

  7. mysql怎么连接数据连接池_Mysql数据库连接池

    一 开源数据连接池 1 dbcp dbcp可能是使用最多的开源连接池,原因大概是因为配置方便,而且很多开源和tomcat应用例子都是使用的这个连接池吧. 这个连接池可以设置最大和最小连接,连接等待时间 ...

  8. 【Springboot 入门培训】#3 MyBatis 多数据源与缓存和数据连接池设置

    介绍MyBatis项目中如何配置多个数据源连接数据库,以及设置sql文的二级缓存功能,配置多数据源与数据连接池等功能.为大家开发和平时练习的时候提供参考和查询的工具文章. 代码下载百度网盘下载:htt ...

  9. c dbhelper类下载mysql_分享一个简单的C#的通用DbHelper类(支持数据连接池)

    每次新项目的时候,都要从头去找一遍数据库工具类.这里分享一个简单实用的C#的通用DbHelper工具类,支持数据连接池. 连接池配置 DbHelper类 public classDBHelper { ...

最新文章

  1. 适合win7的python版本_windows下多个python版本共存,如何在Windows7系统上安装最新的64位Python3.6.2...
  2. 沟通篇:产品经理如何与UI进行沟通
  3. pytorch 不同设备下保存和加载模型,需要指定设备
  4. poi实现excel数据导入数据库
  5. 开源中国 4 周年, 三个平台客户端全面开源
  6. F5 在 Gartner 魔力象限中被评为 Web 应用防火墙领导者
  7. 88mph将上线碎片化零息债券功能,目前正接受Peckshield的安全审计
  8. 宏基电脑安装系统提示acpi错误_电脑常见问题怎么排除 电脑常见问题排除技巧【详解】...
  9. Activiti7实战-入门
  10. 一招解决Maven项目中resource目录下的application.yml不能被识别(即没有小叶子)
  11. python求两个数的最大公约数穷举法_最大公约数GCD算法
  12. Chap.16 总结《CL: An Introduction》 (Vyvyan Evans)
  13. VUE中根据文件后缀名显示对应的图标
  14. 代购源码,淘宝代购系统源码,代购程序,代购系统源码PHP前端源码参数说明
  15. matlab外推法确定搜索区间的程序,《机械优化设计》复习题
  16. 关于龙蜥社区20个问题 |龙蜥问答第1期
  17. vue-3d-model:一个展示三维模型的 Vue 组件
  18. 机器学习中的梯度消失问题vanishing gradient
  19. 打开用友总账时提示“该产品没有安装,无法使用”
  20. 计算机领域前沿热点研究方向,计算机科学前沿热点及发展趋势.pdf

热门文章

  1. You-get视频下载工具
  2. doc转docx文件会乱吗_Word中doc和docx,到底有什么区别
  3. WPF使用SaveFileDialog对话框保存文件时不要用DialogResult.OK判断对话框正常关闭
  4. 自由职业一时爽,一直自由一直爽
  5. Python OpenCV 值 BUG: all the input arrays must have same number of dimensions
  6. Python 绘制五角星 【初识Python】
  7. style=扑克牌游戏大家应该都比较熟悉了,一副牌由54张组成,含3~A、2各4张,小王1张,大王1张。 牌面从小到大用如下字符和字符串表示(其中,小写joker表示小王,大写JOKER表示大
  8. 第七天 01.ssh服务 使用堡塔以及xshell等连接linux
  9. latex排版[4]:子公式分别编号
  10. pycharm使用ssh连接服务器(ubuntu)跑代码报错:“sudo+ssh: ……bash: line 0: cd: xxx/code: No such file or directory”