初探RAC负载均衡-初篇

在工作群里,同事们聊起了关于RAC中的负载均衡问题,对于有些问题我不是很清楚,再此小总结一下。

负载均衡Load Balance

客户端load balance

服务器端load balance

客户端load balance

客户端发起应用请求时,首先通过tnsnames.ora中随机选择一个vip地址,然后通过该vip地址发起请求。这个vip地址实际上就是连接高可用的核心。当客户端访问的实例宕机了,甚至vip已经漂移到其它存活节点,这次连接就失败了。通知服务(FAN)会立刻通知客户端采用其它的vip重新连接,客户端选择tnsnames.ora中的其它vip继续尝试,直到连接成功为止。如果不采用vip方式连接,而直接使用IP地址连接不行么?答案是行,但是连接失败后需要30秒才能通知到客户端,30秒的代价太大了,完全失去了高可用的意义。

客户端的load balance不会判断当前服务器的负载,它只是随机分发。包括11gR2推出的SCAN也不会判断服务器端负载,它按照注册的3个vip地址轮询分发。服务器端的负载是如何判断的呢,我们继续往下看。


服务器端load balance

服务器端的负载均衡是监听器remote listener和local listener来合作完成的。监听器将当前负载信息在LBA(Load Balance Advisor)中注册,并且可以根据服务时间和吞吐量来设定负载类型。如果是Web服务可以配置服务时间作为负载均衡的条件,如果是查询密集型操作可以配置吞吐量类型。

总结一下上面的描述,客户端通过vip来实现连接高可用,服务器端通过remote listener,local listener和LBA的配置实现load balance。

在load balance中有两个总要的概念:

FAN:Fast Application Notification

快速通知,主动推送机制。既通知集群之间的节点,也通知客户端端到集群。

LBA:Load Balance Advisor

负载均衡建议器

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30430420/viewspace-1796866/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/30430420/viewspace-1796866/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值