美文网首页
Dubbo容错方式

Dubbo容错方式

作者: 你值得拥有更好的12138 | 来源:发表于2019-01-04 22:06 被阅读0次

    一.容错方式

    服务调用总会出现,服务不可用的问题,需要短时间内去重试,还是要直接中断在不通的场景下选择。
    1.非幂等性操作
    每一次操作都对数据产生不同的影响。比支付功能,不允许重复提交。

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

    2.不重要操作,一次失败保留日志
    失败就失败了,不重要,比如日志服务,忽略就好。

    Failsafe Cluster
    失败安全,出现异常时,直接忽略。通常用于写入审计日志等操作。
    

    3.需要实时性很高的操作
    比如刷票,需要并发发送请求,谁先回来用谁的。

    Forking Cluster
    并行调用多个服务器,只要一个成功即返回。通常用于实时性要求较高的读操作,但需要浪费更多服务资源。可通过 forks="2" 来设置最大并行数。
    

    4.通知类消息
    不着急,但是要保证发送到,所以保存日志,然后定时发送。

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

    5.广播类的通知
    配置更新,逐一通知每台机器

    Broadcast Cluster
    
    广播调用所有提供者,逐个调用,任意一台报错则报错 .通常用于通知所有提供者更新缓存或日志等本地资源信息。
    
    

    6.普通读操作(重试)

    ### Failover Cluster
    
    失败自动切换,当出现失败,重试其它服务器。通常用于读操作,但重试会带来更长延迟。可通过 `retries="2"` 来设置重试次数(不含第一次)。
    
    

    二、配置方式

    1.Failover

    <dubbo:service retries="2" />
    

    2.Failsafe

    <dubbo:service cluster="failsafe" />
    

    其他类似

    相关文章

      网友评论

          本文标题:Dubbo容错方式

          本文链接:https://www.haomeiwen.com/subject/gaashqtx.html