zoukankan      html  css  js  c++  java
  • Dubbo的10种集群容错模式

       学习Dubbo源码的过程中,首先看到的是dubbo的集群容错模式,以下简单介绍10种集群容错模式

      1.AvailableCluster

      顾名思义,就是可用性优先,遍历所有的invokers,选择可用的

      2.MergeableCluster:当接口需要多个服务组合返回值时,使用该接口

      3.ForkingCluster:并行执行,当有一个返回值时,取该值,该方法中使用了线程池和LinkedBlockingQuene来并发所有的子任务,并阻塞父线程,实现很优雅。可用于查询等要求性能高的,不适用于非幂等的插入删除等操作

      

      4.FailoverCluster:Dubbo的默认容错机制,失败重试,默认次数为2(不包含第一次),会优先选择未执行过的invoker。

      5.RegistryAwareCluster:优先选择本地的invoker

      6.FailsafeCluste:安全失败,当抛出异常时直接catch掉,只打印日志,一般用于记录日志等操作

      7.FailfastCluster:快速失败,当失败后,立刻抛出异常,适用于非接口幂等的写操作。有类似于AvailableCluster

      8.MockClusterWrapper,流程如下:

      

      9.BroadcastCluster:异常自己吃掉,遍历所有invoker,广播所有的invoker做一件事。

      10.FailbackCluster:失败自动恢复,后台记录失败请求,定时重发。通常用于消息通知操作。

      参考大神文章:https://www.jianshu.com/p/e0235110fb74

      

  • 相关阅读:
    搜索相关
    隐藏search box
    SharePoint提供的一些javascript函数
    asp.net in sharepoint
    workflow 的一点讨论
    漂亮的网站
    SwitchPartManager:在UpdatePanel中灵活地切换不同用户控件
    Serializable of an XPO Object
    树形数据的处理
    CSS中的expression
  • 原文地址:https://www.cnblogs.com/yust/p/11311848.html
Copyright © 2011-2022 走看看