RAC 数据库的工作负载管理与数据库服务
1. 工作负载分配
在由两个或更多节点组成的集群中,需要一种方法在各节点间分配工作负载,以最大化可扩展性和吞吐量。从可用性角度看,工作负载分配也很有必要,可减少单个节点故障对整体吞吐量的影响。
1.1 连接平衡
Oracle 通过连接平衡来进行工作负载分配,即在会话建立连接之前执行所有负载平衡活动。一旦连接到特定实例,会话将与该实例通信,直到会话或实例终止。连接平衡可在客户端或服务器端进行:
-客户端连接平衡:客户端进程随机选择一个实例。例如以下tnsnames.ora条目使用了客户端连接平衡:
RAC = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = londona)(PORT = 1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = london2)(PORT = 1521)) (LOAD_BALANCE = ON) (FAILOVER = ON) (CONNECT_DATA = (SERVICE_NAME = RAC) (FAILOVER_MODE = (TYPE = SELECT)(METHOD = BASIC)) ) )当LOAD_BALANCE参数设置为ON时,Oracle Net 将从地址列表中随机选择一个节点与各个监听器建立连接,不使用负载指