锁定老帖子 主题:连接池控制多个数据源
精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (2)
|
|
---|---|
作者 | 正文 |
发表时间:2009-07-09
J2EE系统有两个数据库:数据库A,数据库B(都是Oracle数据库,以读数据为主) 现要求在系统与数据库中间加入连接池。 数据库A是主数据库,平时正常连接是连接到A读写数据。 当A数据库挂了,连接不上或者忙碌用户达到某个数量的时候(我们假如是10个),系统访问数据库B。 当A数据库恢复正常了或者忙碌用户小于某个数量的时候(我们假如是1),重新连接回数据库B。 初步采用的C3P0连接池方案。 为系统配置两个数据源(Datasource),用程序监控两个数据源的使用情况。 并且根据实际情况做切换。 这是一个初步想法,不知道能不能行得通,有没有什么要特别考虑的,请各位大大指点一二。 谢谢。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-07-10
HA可以再db那做掉, 何必弄到连接池那里,
|
|
返回顶楼 | |
发表时间:2009-07-10
GRDJE 写道 HA可以再db那做掉, 何必弄到连接池那里,
1.是不是所有database都可以做到还是只有oracle可以。 2.另外,如果database A是异常挂掉,譬如死机网络中断之类,它能那么智能转到备份database B? 3.连接池有没有那么智能,可以自己控制住多个数据源呢? 谢谢你的回复 |
|
返回顶楼 | |
发表时间:2009-07-10
1.上档次的数据库应该都可以
2.要totally ha, 你得有那个钱, 网络要ha, 电源要ups,......太多了 3.连接池是什么你懂吗? |
|
返回顶楼 | |
发表时间:2009-07-10
此问题属于集群与负载均衡问题。
可以研究一下相应web服务器或者应用服务器的配置。 |
|
返回顶楼 | |
发表时间:2009-07-10
最后修改:2009-07-10
多加一层,用什么DS还是用什么DS 修改下获取DS的接口就可以了,PROXOOL的就是这么做的(别名).
|
|
返回顶楼 | |
发表时间:2009-07-14
用心跳 检测 数据库连接状况
|
|
返回顶楼 | |
发表时间:2009-07-14
这个问题我深啊,呵呵,去打数据库高手吧,呵可
|
|
返回顶楼 | |
发表时间:2009-07-14
考虑问题:
1、应用服务器宕掉了! 2、网络被阻塞了! 3、DB挂了! 等等。 有些事不能想像的! |
|
返回顶楼 | |
发表时间:2009-07-14
非常简单,搞个全局静态变量 DB_NO,缺省为0,
系统启动时,把几个连接池都载入,放到 DBPool[] 数组中, getConnection() 方法 中, 根据DB_NO ,返回相应连接池 DBPool[DB_NO] 的 connection, 系统运行时可以动态改变DB_NO,动态切换数据库。 至于切换策略,根据你的系统实际情况自己编写。 |
|
返回顶楼 | |