Dubbo集群容错

集群容错模式

Failover Cluster 失败自动切换

使用方法

<dubbo:reference cluster="failover" />

当出现失败,重试其它服务器,通常用于读操作(推荐使用)。重试会带来更长延时。

Failfast Cluster 快速失败,抛出异常

使用方法

<dubbo:reference cluster="failfast" />

只发起一次调用,失败立即报错,通常用于非幂等性的写操作。如果有机器在重启,可能会出现调用失败。

Failsave Cluster 快速失败,不抛出异常

使用方法

<dubbo:reference cluster="failsave" />

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

Failback Cluster 失败后定时重试

使用方法

<dubbo:reference cluster="failback" />

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

Forking Cluster 并行调用多个实例。只要一个成功就返回

使用方法

<dubbo:reference cluster="forking" />

只要一个成功就返回,通常用于实时性比较广的读操作。

Broadcast Cluster 广播调用所有实例,只要一个报错就抛出异常

使用方法

<dubbo:reference cluster="broadcast" />

广播调用,所有逐个调用。任意一台报错则报错。通常用于更新提供方本地状态。

Available Cluster 可用实例

使用方法

<dubbo:reference cluster="available" />

Mergeable Cluster 合并结果

使用方法

<dubbo:reference cluster="mergeable" />

原文地址:https://www.cnblogs.com/KevinStark/p/11731150.html

时间: 2024-11-02 20:27:17

Dubbo集群容错的相关文章

dubbo集群容错解决方案

dubbo主要核心部件 Remoting:网络通信框架,实现了sync-over-async和request-response消息机制. RPC:一个远程过程调用的抽象,支持负载均衡.容灾和集群功能. Registry:服务目录框架用于服务的注册和服务事件发布和订阅.(类似第一篇文章中的点菜宝) dubbo架构 Provider: 暴露服务的提供方. Consumer:调用远程服务的服务消费方. Registry: 服务注册中心和发现中心. Monitor: 统计服务和调用次数,调用时间监控中心

Dubbo点滴之集群容错

首先看来自官方文档 这里的Invoker是Provider的一个可调用Service的抽象,Invoker封装了Provider地址及Service接口信息. Directory代表多个Invoker,可以把它看成List<Invoker>,但与List不同的是,它的值可能是动态变化的,比如注册中心推送变更. Cluster将Directory中的多个Invoker伪装成一个Invoker,对上层透明,伪装过程包含了容错逻辑,调用失败后,重试另一个. Router负责从多个Invoker中按路

Dubbo 源码分析 - 集群容错之 Directory

1. 简介 前面文章分析了服务的导出与引用过程,从本篇文章开始,我将开始分析 Dubbo 集群容错方面的源码.这部分源码包含四个部分,分别是服务目录 Directory.服务路由 Router.集群 Cluster 和负载均衡 LoadBalance.这几个部分的源码逻辑比较独立,我会分四篇文章进行分析.本篇文章作为集群容错的开篇文章,将和大家一起分析服务目录相关的源码.在进行深入分析之前,我们先来了解一下服务目录是什么.服务目录中存储了一些和服务提供者有关的信息,通过服务目录,服务消费者可获取

dubbo负载均衡策略和集群容错策略都有哪些

dubbo负载均衡策略 random loadbalance 默认情况下,dubbo是random load balance随机调用实现负载均衡,可以对provider不同实例设置不同的权重,会按照权重来负载均衡,权重越大分配流量越高,一般就用这个默认的就可以了. roundrobin loadbalance 均匀地将流量打到各个机器上去,但是如果各个机器的性能不一样,容易导致性能差的机器负载过高.所以此时需要调整权重,让性能差的机器承载权重小一些,流量少一些. leastactive load

Dubbo服务集群容错

Dubbo是Alibaba开源的分布式服务框架,我们可以非常容易地通过Dubbo来构建分布式服务,并根据自己实际业务应用场景来选择合适的集群容错模式,这个对于很多应用都是迫切希望的,只需要通过简单的配置就能够实现分布式服务调用,也就是说服务提供方(Provider)发布的服务可以天然就是集群服务,比如,在实时性要求很高的应用场景下,可能希望来自消费方(Consumer)的调用响应时间最短,只需要选择Dubbo的Forking Cluster模式配置,就可以对一个调用请求并行发送到多台对等的提供方

面试系列16 dubbo负载均衡策略和集群容错策略都有哪些?动态代理策略呢

(1)dubbo负载均衡策略 1)random loadbalance 默认情况下,dubbo是random load balance随机调用实现负载均衡,可以对provider不同实例设置不同的权重,会按照权重来负载均衡,权重越大分配流量越高,一般就用这个默认的就可以了. 2)roundrobin loadbalance 还有roundrobin loadbalance,这个的话默认就是均匀地将流量打到各个机器上去,但是如果各个机器的性能不一样,容易导致性能差的机器负载过高.所以此时需要调整权

Dubbo之旅--集群容错和负载均衡

当我们的系统中用到Dubbo的集群环境,因为各种原因在集群调用失败时,Dubbo提供了多种容错方案,缺省为failover重试. Dubbo的集群容错在这里想说说他是因为我们实际的项目中出现了此类的问题,因为依赖的第三方项目出现异常,导致dubbo调用超时,此时使用的是默认的集群容错方式,而配置的reties='3',这样前段系统连续掉用了三次服务,结果可想而知. 先说一下各节点关系: 这里的Invoker是Provider的一个可调用Service的抽象,Invoker封装了Provider地

Dubbo分布式服务框架(一)——集群容错详解

1.集群调用失败时,Dubbo提供了多种容错方案. 各节点关系: Invoker是Provider某个可调用Service的抽象,封装了Provider地址及Service接口信息. Directory可以看成List<Invoker>,与List不同的是,它的值可能是动态变化的,比如注册中心推送变更. Cluster将Directory中的多个Invoker伪装成一个Invoker,对上层透明,伪装过程包含了容错逻辑,调用失败后,重试另一个. Router负责从多个Invoker中按路由规则

dubbo之集群容错

在集群调用失败时,Dubbo 提供了多种容错方案,缺省为 failover 重试. 集群容错模式 1. Failover Cluster 失败自动切换,当出现失败,重试其它服务器 .通常用于读操作,但重试会带来更长延迟.可通过 retries="2" 来设置重试次数(不含第一次).重试次数配置如下:<dubbo:service retries="2" /><dubbo:reference retries="2" /><