连接池简介及其工作原理
连接池用于创建和管理数据库连接的缓冲池技术,缓冲池中的连接可以被任何需要他们的线程使用。当一个线程需要用JDBC对一个数据库操作时,将从池中请求一个连接。当这个连接使用完毕后,将返回到连接池中,等待为其他的线程服务。
- 连接池的主要优点有以下三个方面。
第1、减少连接创建时间。连接池中的连接是已准备好的、可重复使用的,获取后可以直接访问数据库,因此减少了连接创建的次数和时间。
第2、简化的编程模式。当使用连接池时,每一个单独的线程能够像创建一个自己的JDBC连接一样操作,允许用户直接使用JDBC编程技术。
第3、控制资源的使用。如果不使用连接池,每次访问数据库都需要创建一个连接,这样系统的稳定性受系统连接需求影响很大,很容易产生资源浪费和高负载异常。连接池能够使性能最大化,将资源利用控制在一定的水平之下。连接池能控制池中的连接数量,增强了系统在大量用户应用时的稳定性。
2.下面,简单的阐述下连接池的工作原理。
连接池技术的核心思想是连接复用,通过建立一个数据库连接池以及一套连接使用、分配和管理策略,使得该连接池中的连接可以得到高效、安全的复用,避免了数据库连接频繁建立、关闭的开销。
连接池的工作原理主要由三部分组成,分别为连接池的建立、连接池中连接的使用管理、连接池的关闭。
**第一、连接池的建立。**一般在系统初始化时,连接池会根据系统配置建立,并在池中创建了几个连接对象,以便使用时能从连接池中获取。连接池中的连接不能随意创建和关闭,这样避免了连接随意建立和关闭造成的系统开销。Java中提供了很多容器类可以方便的构建连接池,例如Vector、Stack等。
**第二、连接池的管理。**连接池管理策略是连接池机制的核心,连接池内连接的分配和释放对系统的性能有很大的影响。 其管理策略是:
当客户请求数据库连接时,首先查看连接池中是否有空闲连接,如果存在空闲连接,则将连接分配给客户使用;
如果没有空闲连接,则查看当前所开的连接数是否已经达到最大连接数,如果没达到就重新创建一个连接给请求的客户;如果达到就按设定的最大等待时间进行等待,如果超出最大等待时间,则抛出异常给客户。
当客户释放数据库连接时,先判断该连接的引用次数是否超过了规定值,如果超过就从连接池中删除该连接,否则保留为其他客户服务。
该策略保证了数据库连接的有效复用,避免频繁的建立、释放连接所带来的系统资源开销。
**第三、连接池的关闭。**当应用程序退出时,关闭连接池中所有的连接,释放连接池相关的资源,该过程正好与创建相反。
转载自:https://blog.csdn.net/Amelia__Liu/article/details/81295115
连接池简介及其工作原理相关推荐
- 什么是连接池,其工作原理是什么?
连接池用于创建和管理数据库连接的缓冲池技术,缓冲池中的连接可以被任何需要他们的线程使用.当一个线程需要用JDBC对一个数据库操作时,将从池中请求一个连接.当这个连接使用完毕后,将返回到连接池中,等待为 ...
- 华为防火墙简介及其工作原理
防火墙作为一种安全设备被广泛使用于各种网络环境中,他在网络间起到了间隔作用.华为作为著名的网络设备厂商,2001年便发布了首款防火墙插卡,而后根据网络发展及技术需求,推出了一代又一代防护墙及安全系列产 ...
- Druid连接池简介和配置
Druid是什么?有什么作用? Druid首先是一个数据库连接池,但它不仅仅是一个数据库连接池,它还包含一个ProxyDriver,一系列内置的JDBC组件库,一个SQL Parser. Druid的 ...
- Spring的简介和工作原理
一.简介 Spring 是个java企业级应用的开源开发框架.Spring主要用来开发Java应用,但是有些扩展是针对构建J2EE平台的web应用.Spring 框架目标是简化Java企业级应 ...
- 何为数据库连接池?其工作原理是什么?
连接池用于创建和管理数据库连接的缓冲池技术,缓冲池中的连接可以被任何需要他们的线程使用.当一个线程需要用JDBC对一个数据库操作时,将从池中请求一个连接.当这个连接使用完毕后,将返回到连接池中,等待为 ...
- 旋转变压器简介、工作原理及分类
文章整理于网络: 一.简介 旋转变压器(resolver)是一种电磁式传感器,又称同步分解器.它是一种测量角度用的小型交流电动机,用来测量旋转物体的转轴角位移和角速度,由定子和转子组成.其中定子绕组作 ...
- Netflix Hystrix断路器简介与工作原理
一.前言? 1.Netflix Hystrix断路器是什么? Netflix Hystrix是SOA/微服务架构中提供服务隔离.熔断.降级机制的工具/框架.Netflix Hystrix是断路器的一种 ...
- Shiro(一)之shiro简介与工作原理
一.shiro简介 这里我先来介绍一下什么是shiro,Apache Shiro 是 Java 的一个安全框架.目前,使用 Apache Shiro 的人越来越多,因为它相当简单,对比 Spring ...
- 逆变器的简介、工作原理及主要构成
逆变器,英文inverter,是一种电源转换装置,可将12V或24V的直流电转换成230V.50Hz交流电或其它类型的交流电.它输出的交流电可用于各类设备,最大限度地满足移动供电场所或无电地区用户对交 ...
- 路由器简介以及工作原理
路由器 一.定义:是实现网络互连设备,工作在网络层 二.功能: 路由和转发 1)可以决定数据包从来源端到目的端所经过的路由路径(host到host之间的最佳传输路径),这个过程称为路由: 2)将路由器 ...
最新文章
- 移动支付交易规模增长率高达707%,安全面临考验!
- rqt teb参数动态调试工具_16.ROS常用工具:Rviz/rqt
- QT绘制带有负条的条形图。
- spring mvc学习(10):eclipse的环境前maven配置
- 漫话:如何给女朋友解释什么是BIO、NIO和AIO?
- 二分答案——烦恼的高考志愿(洛谷 P1678)
- ASP.NET 安全认证
- 通过源码理解反射与注解是什么东西?
- 电大考的是职称英语同计算机,最新电大统考计算机应用基础真题选择题详细分析小抄.doc...
- SQL之总结(四)---null问题的处理
- Linux文本处理之awk
- Android GMS 包。 GOOGLE play
- Mac下Android studio搭建Android开发环境【新手】
- 主板常见故障的维修方法
- Linus批评英特尔的LAM代码,拒绝将其合并到内核
- 【fragment】Android Fragments 详细使用
- 判断字符串是否在base64编码范围内
- 【哈夫曼树】创建哈夫曼树
- WC Java 实现
- 电子学会2021年6月青少年软件编程(图形化)等级考试试卷(二级)答案解析