rac集中解决了高可用性的两个问题:
1)failover
2)负载均衡
其中failover有三种方法:
1: client-side connect time failover
2:taf(transparent application failover)
3: server-side taf
含义:1:client-side connect time failover
在client端tns中设置failover=on条目。在节点链接时候如果发现无法连接,则转移倒其他节点。
2:taf(transparent application failover)
链接后,程序运行的时候,如果链接的实例出现问题,则会转移倒另外一个节点上。
其中有四个参数:
mode:base感知连接节点故障才启动其他实例连接。preconnect在实例连接时候创建其他链接。
type:session 执行到一半出错,返回所有结果集。
select 执行到一半出错,返回剩下没返回的结果集。
delay:重式时间延迟
retries:重试次数
3:结合了oracle中的服务,用户连接了对应服务后,如果服务节点出现问题,则server会转倒另一个节点去。
负载均衡:1)通过connect按照某种算法分陪节点(包括client-side LB和server-side LB)
2)通过服务方式分配节点
client-side LB:
tns中设置LOAD_BALANECE=yes
server-side LB
设置一个参数REMOTE_LISTENER
通过这两个功能介绍,我终于知道了server的意义。以前真不知道通过server登录和通过实例登录区分他有什么意义。
意义在于,首先通过不同的server做到了负载均衡(人为可控制连接到rac中的某个节点,专用的服务,连接到专用的节点),2台服务器都有相应的用户连接。而且当一个server出现问题时候。会将这个server的用户全部failover倒另一个节点。
实例虽然也可以完成,但是不好控制。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9524377/viewspace-664631/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/9524377/viewspace-664631/