六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 58|回复: 0

数据库连接池的设计

[复制链接]

升级  65.33%

40

主题

40

主题

40

主题

秀才

Rank: 2

积分
148
 楼主| 发表于 2013-2-7 15:20:21 | 显示全部楼层 |阅读模式
设计一个数据库连接池,不是非常难的事情,但是要做一个好的连接池,不容易。
 
1.连接池出现的背景
 
传统的JDBC连接,当应用程序需要connection的时候,就去创建,使用完了销毁。这种模式,对于稍微大一点的应用,频繁的创建和销毁连接,会给系统带来性能的问题,最终会成为性能的瓶颈。
 
连接池的基本原理如下:
创建一个pool,初始化时,预先把创建好的连接存在Pool里面,当需要连接时,从Pool取出一个,当使用完毕以后再把它放到池子里面。连接池应该有下面很重要的属性:
1)initialSize
初始化连接的数目
2)MaxIdle
最大的处于闲置状态的连接数目,所谓闲置的连接也就是没有被使用的连接
3)MaxActive
正在使用的连接的最大数目
4)MaxWait
当池中没有闲置连接时,客户端等待闲置连接的最大时间
5)minIdle
当池中闲置的连接小于minIdle时,连接池会主动创建连接直到=minIdle为止
完成连接池的架构,包括连接池的创建,连接池对Connection的管理(包括创建和销毁)
 
 
http://www.sudu.cn/info/html/edu/20071219/117161.html
 
2.连接池的建立
数据库连接池,可以采用Java工具集合类,如Vector,ArrayList(注意要用线程安全的,用ArrayList要注意同步),LinkedList
 
3.连接池的管理
 
4.连接池的关键技术
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表