• dubbo 3 集群容错配置


    一、基础概念

            容错即“耐故障”或“容许故障”的意思。对于组成系统的元器件发生不可避免的故障时,采取响应的措施,仍能使系统维持正常工作状态。

            容错模式:是解决容错问题的一系列解决方案。

    二、dubbo服务集群容错模式

            dubbo框架为服务集群容错提供了一系列好的解决方案,在此称为dubbo服务集群容错模式。

    1、集群容错模式配置

      标签:

    <dubbo:service>  //提供服务方的标签  用于发布服务

     <dubbo:reference>  //消费方的标签,用于引用服务

    <dubbo:consumer> // 消费方,一般用于全局配置

    <dubbo:provider>  //提供服务方,一般用于全局配置

            属性:cluster;

            类型:String;

            是否必填:可选;

            缺省值:failover;

            作用:性能调优;

            集群方式:可选:failover/failfast/failsafe/failback/forking;

            兼容性:2.0.5以上版本。

    2、 Failover Cluster:失败自动切换

            当出现失败时,重试其他服务器,为缺省值。通常用于读操作,但重试会带来更长的延迟。可通过可通过retries="2"来设置重试次数(不含第一次)。

         <dubbo:service retries="2" / >或<dubbo: reference retries="2"/>
    
            或针对具体方法:
    
            <dubbo:reference>
    
                <dubbo:method name="findFoo" retries="2" />
    
            </dubbo:reference>

    3、FailFast Cluster:快速失败

            只发起一次调用,失败立即报错。通常用于非幂等性的写操作,比如:新增记录

            示例:

     <dubbo:service  cluster="failfast" />或<dubbo:reference cluster="failfast" />

     读操作建议使用 Failover 失败自动切换,默认重试两次其他服务器。写操作建议使用 Failfast 快速失败,发一次调用失败就立即报错。

    其他策略都不常用

    4、Failsafe Cluster:失败安全

            出现异常时,直接忽略。通常用于写入审计日志等操作。

    5、Failback Cluster:失败自动恢复

            后台记录失败请求,定时重发。通常用于消息通知操作。

    6、Forking Cluster:并行调用        

            并行调用多个服务器,只要一个成功即返回。通常用于实时性要求比较高的读操作,但需要浪费更多的服务资源。

            可通过forks="2"来设置最大并行数。

  • 相关阅读:
    handle/hmodule/hinstance/hwnd区别
    How to control progress bar setup made by WIX
    C#定制并发送HTML邮件
    如何添加WPF,SilverLight控件到ToolBox
    【FWD】Windows Azure Table Storage vs. Windows SQL Azure
    MSBuild failed after add a new configuration
    .NET 下各种Resource的读取方式
    杨辉三角算法改进
    代码生成技术
    回家的美丽
  • 原文地址:https://www.cnblogs.com/hup666/p/13466219.html
Copyright © 2020-2023  润新知