zoukankan      html  css  js  c++  java
  • Dubbo集群容错

    集群容错指的是,当消费者调用提供者集群时发生异常的处理方案

    一、Dubbo内置的容错策略

    (1) Failover

    故障转移策略。当消费者调用提供者集群中的某个服务器失败时,其会自动尝试着调用其它服务器。该策略通常用于读操作,例如,消费者要通过提供者从DB中读取某数据。但重试会带来服务延迟

    (2) Failfast

    快速失败策略。消费者端只发起一次调用,若失败则立即报错。通常用于非幂等性的写操作,比如新增记录。
    幂等:在请求参数相同的前提下,请求一次与请求n次,对系统产生的影响是相同的

    • GET:幂等
    • POST:非幂等
    • PUT:幂等
    • DELETE:幂等

    (3) Failsafe

    失败安全策略。当消费者调用提供者出现异常时,直接忽略本次消费操作。该策略通常用于执行相对不太重要的服务,例如,写入审计日志等操作

    (4) Failback

    失败自动恢复策略。消费者调用提供者失败后,Dubbo会记录下该失败请求,然后定时自动重新发送该请求。该策略通常用于实时性要求不太高的服务,例如消息通知操作

    (5) Forking

    并行策略。消费者对于同一服务并行调用多个提供者服务器,只要一个成功即调用结束并返回结果。通常用于实时性要求较高的读操作,但其会浪费较多服务器资源

    (6) Broadcast

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

    二、配置集群容错策略

    容错策略可以设置在消费者端,也可以设置在提供者端。若消费者与提供者均做了设置,则消费者端的优先级更高

    (1) 设置重试次数

    A、提供者端设置

    服务类级别

    服务方法级别

    B、消费者端设置

    服务类级别

    服务方法级别

    (2) 容错策略设置

    A、提供者端

    B、消费者端

     

    官网介绍

    http://dubbo.apache.org/zh-cn/docs/user/demos/fault-tolerent-strategy.html

  • 相关阅读:
    Android Architecture Components
    adb命令
    Dagger2 scope
    Dagger2学习资源
    Dependency Injection学习笔记
    什么是ADB
    使用AndroidStudio dump heap,再用 Eclipse MAT插件分析内存泄露
    Dagger学习笔记
    linux & shell & nginx & Docker Kubernetes
    Go 目录
  • 原文地址:https://www.cnblogs.com/edda/p/13260161.html
Copyright © 2011-2022 走看看