数据库连接池概况与关键部分论文.doc_第1页
数据库连接池概况与关键部分论文.doc_第2页
数据库连接池概况与关键部分论文.doc_第3页
数据库连接池概况与关键部分论文.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库连接池概况与关键部分论文 一、数据库连接池基本概念及工作原理 数据库连接池作为一种将链接作为资源管理的实体,此资源就是数据库的连接。连接池的基本思想就是预先设立一部分放置于内存中的固定对象以备使用。而建立一个数据库连接池,就可将链接发过去进行查询,从而来获取结果。一个链接在生命周期内所能处理的查询数据是没有限制的,通过采用连接池结束,只需从内存中取得而不用反复的建立。在内存中,连接池可对链接进行管理,使其利用率提高。 连接池一般使用过程主要有四个部分: 1、发送连接请求:连接池将按照发送请求的顺序进行排序,并一对一的对其配置给他们链接的处理对象。连接池最大的优势在于可以允许多个链接同时发送申请,而连接池可以对其进行判断。 2、对发送进行连接处理:连接池可以对列表中的使用和空闲的部分进行维护,连接池从其中空闲的部分取出链接后归还链接之前,放回使用池,使整个连接池利用率最大化。 3、取出链接环节:连接池按照上一步的操作将空闲部分的链接取出。 4、回收链接环节:当请求模块使用完毕时,将链接返回到空闲池。模块登记链接后,链接就从使用列表中去除并自动回到列表中等待新的请求。 二、数据库连接池技术关键部分 1、连接池配置:数据库连接池需要多少数量的链接这是关键所在,如放少了则整个循环受到影响,多了则浪费内存资源。配置的策略为:首先要根据硬件系统的配及软件环境的应用请求而定,最先配置出一个连接池的数量及最大配置量的链接数量,从而来判断合适的连接数。 2、并发控制:在有很多数量的线程对共享资源进行同时访问,则要考虑到线程之间的同步问题,来确保不会在访问过程中出现逻辑性错误。共享资源则为连接池,而要改变连接池的属性就要对其进行同步化处理。 3、定时检测:在连接池自我管理的过程中,通过定时地对每个链接对象的状态和连接的数量来判断完成的。管理者可以设置连接池的参数来管理连接池中的连接最大使用次数及最大空闲时间,以此来约束连接池。 4、复式连接:此种模式在复用链接中较为常见,每个数据库连接都保留其引用的数量,以此来记录连接使用者的数量。具体而言,就是采用了使用池和空闲池的技术,空闲池中的链接被分配出去之后,就可以采取复用来计算最小的链接方法。 三、数据库访问的过程 用户由ServletBeans执行数据库的访问,调用连接池类ConnectionPool的addTask方法,addTask执行过程为: 调用ThreadPool线程中的getRequesterID以此来得到任务申请。 实例化查询任务QueryTask对象。 调用ThreadPool线程池类的addTask将查询任务对象添加到线程池中。 调用ThreadPool线程池类addTAskListener添加任务完成时间监听,过程结束后返回用户处。 监听者通过调用查询信息类SQLInformation对象的getResult的方法得到查询数据,保存在DbInterface类中,用户通过调用DBInterface类的getQueryResult方法得到查询结果。DbInterface类的用法如下: 建立类对象。调用构造函数DBInterface,其中dbCon为连接池对象,log为日志对象,thteadPool为线程池对象。 执行SQl语句。调用DBInterface的方法,DBInterface将自动SQL添加到线程中,执行完SQL线程语句将结果和异常传递给DBInterface类。 调用DBInterface的方法getQueryResult和hasNextQueryRe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论