-
Notifications
You must be signed in to change notification settings - Fork 0
route among database instances
kaven276 edited this page Jan 10, 2016
·
1 revision
在客户端做 db 路由
- 先选中要访问的 db
- 然后 dbPool.findFree
- 然后用 connection 发送请求
noradle-dispatcher is unaware of db routing, just take easy.
这个是首选的
客户端连接 noradle-dispatcher 只说明要连接哪个库,并不指定是RAC中的哪个节点,也不知道是 DG 中的 primary还是哪个 standby。 请求发过来后,noradle-dispatcher 自行决定使用哪个 db instance 来访问。
本方案优势:
- 客户端连接配置简单,只需指出是哪个库,如果dispatcher只hold一个库,都不用指定使用那个库
- 服务器侧可以动态的调整策略,比如RAC/DG节点扩容后,无需修改和重启客户端,就能利用上
- 运维管理员和系统自动,都能很好的将应用负载在 RAC/DG 环境下调整
- 客户端连接,要不要明确提出要使用哪个db(instance)?