数据库连接池的作用

引用http://blog.163.com/[email protected]/blog/static/93745961201111664310934/

  对于一个简单的数据库引用,用于对数据库的访问不是很频繁。这时就可以简单的在需要访问数据库是,就创建一个连接,用完后就关闭它,这样做也不会带来什么明显的性能上的开销。但是对于一个复杂的数据库引用,情况就完全不同了。频繁的建立、关闭连接,会极大的减低系统的性能,因为对于连接的使用成了系统性能的瓶颈。

  对于共享资源,有一个很著名的设计模式:资源池。该模式正是为了解决资源频繁分配、释放所造成的问题的。把该模式应用到数据库连接管理领域,就是建立一个数据库连接池,提供一套高效的连接分配、使用策略,最终目标是实现连接的高效、安全的复用。

  数据库连接池的基本原理是在内部对象池中维护一定数量的数据库连接,并对外暴露数据库连接获取和返回方法。如:外部使用者可通过getConnection 方法获取连接,使用完毕后再通过releaseConnection 方法将连接返回,注意此时连接并没有关闭,而是由连接池管理器回收,并为下一次使用做好准备。

  数据库连接池技术带来的优势:

  1、资源复用

    由于数据库连接得到重用,避免了频繁创建、释放连接引起的大量性能开销。在减少系统  消耗的基础上,另一方面也增进了系统运行环境的平稳性(减少内存碎片以及数据库临时进   程/线程的数量)。

  2、更快的系统响应速度

    数据库连接池在初始化过程中,往往已经创建了若干数据库连接至于池中备用。此时连接  的初始化工作均已完成。对于业务请求处理而言,直接利用现有可用连接,避免了数据库连接  初始化和释放过程的时间,从而缩减了系统整体响应时间。

  3、统一的连接管理,避免数据库连接泄漏

    在较为完备的数据库连接池实现中,可根据预先的连接占用超时设定,强制收回被占用连  接。从而避免了常规数据库连接操作中可能出现的资源泄漏。

时间: 2024-10-11 15:59:51

数据库连接池的作用的相关文章

数据库连接池的作用及配置说明

案例解析: 数据库连接池的作用及配置分析

数据库连接池配置说明

1. 引言 1.1 定义 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库连接池正是针对这个问题提出来的. 数据库连接池负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个:释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏.这项技术能明显提高对数据库操作的性能. 1.2 参考资料 DBC

[转载].net下数据库连接池

之前写过一篇博客数据库连接池分析 分析了,通过代码来分析数据库连接池的作用. 这里要搞清楚一个概念,数据库连接池并不是数据库服务的内容,而是客户端应用程序创建的一种应用架构. 所以我们在数据库服务器上找不到什么开启数据库连接池的选项. 接下来将开启与不开启数据库连接池的区别. 使用数据库连接池 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Dat

对spring 对持久层的支持和数据库连接池的理解

1.spring对持久层的支持在于,得到数据库连接之后操作上的封装,将操作简化了.也就是说以后操作sql语句就用XXXTemplate对象了. 2.数据库连接池的作用只在于得到数据库的连接,并对数据库的连接做管理,不涉及到得到连接后的操 所以,spring对持久层的支持的XXXTemplate类是属于spring包下的,是spring的支持.但是数据库连接池的获取连接的数据源对象XXXDataSource对象是在第三方包内的,比如c3p0和dbcp包 3.所以不同的XXXTemplate可以和不

java常用数据库连接池 (DBCP、c3p0、Druid) 配置说明

1. 引言 1.1 定义 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库连接池正是针对这个问题提出来的. 数据库连接池负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个:释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏.这项技术能明显提高对数据库操作的性能. 1.2 参考资料 DBC

常用数据库连接池 (DBCP、c3p0、Druid) 配置说明(转)

1. 引言 1.1 定义 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库连接池正是针对这个问题提出来的. 数据库连接池负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个:释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏.这项技术能明显提高对数据库操作的性能. 1.2 参考资料 DBC

常用数据库连接池 (DBCP、c3p0、Druid) 配置说明

1. 引言 1.1 定义 数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出.对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标.数据库连接池正是针对这个问题提出来的. 数据库连接池负责分配.管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个:释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏.这项技术能明显提高对数据库操作的性能. 1.2 参考资料 DBC

几种常见数据库连接池的使用比较

感觉在介绍之前有必要阐述一下连接池的几个概念,有助于后边一些文字的理解. 最原始的数据库使用就是打开一个连接并进行使用,使用过后一定要关闭连接释放资源.由于频繁的打开和关闭连接对jvm包括数据库都有一定的资源负荷,尤其应用压力较大时资源占用比较多容易产生性能问题.由此使用连接池的作用就显现出来,他的原理其实不复杂:先打开一定数量的数据库连接,当使用的时候分配给调用者,调用完毕后返回给连接池,注意返回给连接池后这些连接并不会关闭,而是准备给下一个调用者进行分配.由此可以看出连接池节省了大量的数据库

DBCP数据库连接池的简单使用

0.DBCP简介      DBCP(DataBase connection pool)数据库连接池是 apache 上的一个Java连接池项目.DBCP通过连接池预先同数据库建立一些连接放在内存中(即连接池中),应用程序需要建立数据库连接时直接到从接池中申请一个连接使用,用完后由连接池回收该连接,从而达到连接复用,减少资源消耗的目的. 1.DBCP所依赖的jar包(以下例子基于如下jar包版本)    commons-dbcp2-2.1.1.jar       commons-logging-