连接池用于创建和管理数据库连接的缓冲池技术,缓冲池中的连接可以被任何需要他们的线程使用。当一个线程需要用JDBC对一个数据库操作时,将从池中请求一个连接。当这个连接使用完毕后,将返回到连接池中,等待为其他的线程服务。

  1. 连接池的主要优点有以下三个方面。

第1、减少连接创建时间。连接池中的连接是已准备好的、可重复使用的,获取后可以直接访问数据库,因此减少了连接创建的次数和时间。

第2、简化的编程模式。当使用连接池时,每一个单独的线程能够像创建一个自己的JDBC连接一样操作,允许用户直接使用JDBC编程技术。

第3、控制资源的使用。如果不使用连接池,每次访问数据库都需要创建一个连接,这样系统的稳定性受系统连接需求影响很大,很容易产生资源浪费和高负载异常。连接池能够使性能最大化,将资源利用控制在一定的水平之下。连接池能控制池中的连接数量,增强了系统在大量用户应用时的稳定性。

2.下面,简单的阐述下连接池的工作原理。

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

连接池的工作原理主要由三部分组成,分别为连接池的建立、连接池中连接的使用管理、连接池的关闭。

**第一、连接池的建立。**一般在系统初始化时,连接池会根据系统配置建立,并在池中创建了几个连接对象,以便使用时能从连接池中获取。连接池中的连接不能随意创建和关闭,这样避免了连接随意建立和关闭造成的系统开销。Java中提供了很多容器类可以方便的构建连接池,例如Vector、Stack等。

**第二、连接池的管理。**连接池管理策略是连接池机制的核心,连接池内连接的分配和释放对系统的性能有很大的影响。 其管理策略是:
当客户请求数据库连接时,首先查看连接池中是否有空闲连接,如果存在空闲连接,则将连接分配给客户使用;

如果没有空闲连接,则查看当前所开的连接数是否已经达到最大连接数,如果没达到就重新创建一个连接给请求的客户;如果达到就按设定的最大等待时间进行等待,如果超出最大等待时间,则抛出异常给客户。

当客户释放数据库连接时,先判断该连接的引用次数是否超过了规定值,如果超过就从连接池中删除该连接,否则保留为其他客户服务。

该策略保证了数据库连接的有效复用,避免频繁的建立、释放连接所带来的系统资源开销。

**第三、连接池的关闭。**当应用程序退出时,关闭连接池中所有的连接,释放连接池相关的资源,该过程正好与创建相反。

转载自:https://blog.csdn.net/Amelia__Liu/article/details/81295115

连接池简介及其工作原理相关推荐

  1. 什么是连接池,其工作原理是什么?

    连接池用于创建和管理数据库连接的缓冲池技术,缓冲池中的连接可以被任何需要他们的线程使用.当一个线程需要用JDBC对一个数据库操作时,将从池中请求一个连接.当这个连接使用完毕后,将返回到连接池中,等待为 ...

  2. 华为防火墙简介及其工作原理

    防火墙作为一种安全设备被广泛使用于各种网络环境中,他在网络间起到了间隔作用.华为作为著名的网络设备厂商,2001年便发布了首款防火墙插卡,而后根据网络发展及技术需求,推出了一代又一代防护墙及安全系列产 ...

  3. Druid连接池简介和配置

    Druid是什么?有什么作用? Druid首先是一个数据库连接池,但它不仅仅是一个数据库连接池,它还包含一个ProxyDriver,一系列内置的JDBC组件库,一个SQL Parser. Druid的 ...

  4. Spring的简介和工作原理

    一.简介     Spring 是个java企业级应用的开源开发框架.Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用.Spring 框架目标是简化Java企业级应 ...

  5. 何为数据库连接池?其工作原理是什么?

    连接池用于创建和管理数据库连接的缓冲池技术,缓冲池中的连接可以被任何需要他们的线程使用.当一个线程需要用JDBC对一个数据库操作时,将从池中请求一个连接.当这个连接使用完毕后,将返回到连接池中,等待为 ...

  6. 旋转变压器简介、工作原理及分类

    文章整理于网络: 一.简介 旋转变压器(resolver)是一种电磁式传感器,又称同步分解器.它是一种测量角度用的小型交流电动机,用来测量旋转物体的转轴角位移和角速度,由定子和转子组成.其中定子绕组作 ...

  7. Netflix Hystrix断路器简介与工作原理

    一.前言? 1.Netflix Hystrix断路器是什么? Netflix Hystrix是SOA/微服务架构中提供服务隔离.熔断.降级机制的工具/框架.Netflix Hystrix是断路器的一种 ...

  8. Shiro(一)之shiro简介与工作原理

    一.shiro简介 这里我先来介绍一下什么是shiro,Apache Shiro 是 Java 的一个安全框架.目前,使用 Apache Shiro 的人越来越多,因为它相当简单,对比 Spring ...

  9. 逆变器的简介、工作原理及主要构成

    逆变器,英文inverter,是一种电源转换装置,可将12V或24V的直流电转换成230V.50Hz交流电或其它类型的交流电.它输出的交流电可用于各类设备,最大限度地满足移动供电场所或无电地区用户对交 ...

  10. 路由器简介以及工作原理

    路由器 一.定义:是实现网络互连设备,工作在网络层 二.功能: 路由和转发 1)可以决定数据包从来源端到目的端所经过的路由路径(host到host之间的最佳传输路径),这个过程称为路由: 2)将路由器 ...

最新文章

  1. 移动支付交易规模增长率高达707%,安全面临考验!
  2. rqt teb参数动态调试工具_16.ROS常用工具:Rviz/rqt
  3. QT绘制带有负条的条形图。
  4. spring mvc学习(10):eclipse的环境前maven配置
  5. 漫话:如何给女朋友解释什么是BIO、NIO和AIO?
  6. 二分答案——烦恼的高考志愿(洛谷 P1678)
  7. ASP.NET 安全认证
  8. 通过源码理解反射与注解是什么东西?
  9. 电大考的是职称英语同计算机,最新电大统考计算机应用基础真题选择题详细分析小抄.doc...
  10. SQL之总结(四)---null问题的处理
  11. Linux文本处理之awk
  12. Android GMS 包。 GOOGLE play
  13. Mac下Android studio搭建Android开发环境【新手】
  14. 主板常见故障的维修方法
  15. Linus批评英特尔的LAM代码,拒绝将其合并到内核
  16. 【fragment】Android Fragments 详细使用
  17. 判断字符串是否在base64编码范围内
  18. 【哈夫曼树】创建哈夫曼树
  19. WC Java 实现
  20. 电子学会2021年6月青少年软件编程(图形化)等级考试试卷(二级)答案解析

热门文章

  1. Hopper调试个人知识管理软件myBase
  2. 常兴老师--华为公司营销课程设计专家
  3. 阿里数据师最爱用的图表特效,10分钟让可视化报告内涵又炫酷
  4. 【Docker】seaweedfs的搭建与使用
  5. 实对称阵可对角化的几种证明
  6. 技术研发团队管理计划方案书
  7. dlib人脸配准(人脸对齐)
  8. 嵌入式系统、嵌入式设计软件概述
  9. 6502精品仿真软件(联锁)
  10. 读书笔记-------修炼之道互联网产品从设计到运营