zoukankan      html  css  js  c++  java
  • oracle rac负载均衡

    rac负载均衡分基于客户端和基于服务端两种:

    客户端

    配置比较简单,在tnsnames.ora中增加load_balance=on即可,如下:

    RAC =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac2-vip)(PORT = 1521))
    (LOAD_BALANCE = ON)
    (FAILOVER = ON)
    (CONNECT_DATA =
    (SERVER = DEDICATED)
    (SERVICE_NAME = rac)
    )
    )

    客户端连接rac的时候会随机挑个节点进行连接,因为客户端不知道这个节点的状况,这个节点挂了的话,有可能出现长时间的tcp等待。10g版本以后,这种状况有很大的改善,但是客户端不知道rac各节点的负荷和连接数,有可能出现某节点重负,使均衡不能很好的发挥。

    服务端

    10g以后,服务端负载均衡能根据各节点的负荷和连接数,均衡各节点,各节点的pmon进程会定期向rac汇报自己的负荷情况。

    配置如下:

    LISTENERS_RAC =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac1-vip)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = rac2-vip)(PORT = 1521))
    )

    ALTER SYSTEM SET REMOTE_LISTENER = LISTENERS_RAC;

    有时候汇报负荷的进程延迟导到均衡效果不明显,这时加入PREFER_LEAST_LOADED_NODE=OFF,服务器会根据连接数进行分配。

    从Oracle 10.2开始,Oracle引入了Load Balance Advisor,对负载均衡有了进一步的改进。结合Service,可以对不同的SERVICE设置不同的负载均衡策略。

  • 相关阅读:
    CPU和Memory压力测试方法
    WIN 系统怎么样查看EXpressCache功能
    OGG 源端与目标端 约束不一致
    oracle 查询角色具有的权限
    Mysql 主从一致校验工具------Maatkit工具包
    从库找不到对应的被删除的记录
    python安装包是出现错误解决
    mysql5.7用户密码策略问题
    Centos7上安装docker
    SQL通过身份证获取信息
  • 原文地址:https://www.cnblogs.com/liluredhat/p/6703150.html
Copyright © 2011-2022 走看看