集群容错模式
Failover Cluster 失败自动切换
使用方法
1  | <dubbo:reference cluster="failover" />  | 
当出现失败,重试其它服务器,通常用于读操作(推荐使用)。重试会带来更长延时。
Failfast Cluster 快速失败,抛出异常
使用方法
1  | <dubbo:reference cluster="failfast" />  | 
只发起一次调用,失败立即报错,通常用于非幂等性的写操作。如果有机器在重启,可能会出现调用失败。
Failsave Cluster 快速失败,不抛出异常
使用方法
1  | <dubbo:reference cluster="failsave" />  | 
出现异常时,直接忽略,通常用于写入审计日志等操作
Failback Cluster 失败后定时重试
使用方法
1  | <dubbo:reference cluster="failback" />  | 
后台记录失败请求,定时重发。通常用于消息通知等操作。
Forking Cluster 并行调用多个实例。只要一个成功就返回
使用方法
1  | <dubbo:reference cluster="forking" />  | 
只要一个成功就返回,通常用于实时性比较广的读操作。
Broadcast Cluster 广播调用所有实例,只要一个报错就抛出异常
使用方法
1  | <dubbo:reference cluster="broadcast" />  | 
广播调用,所有逐个调用。任意一台报错则报错。通常用于更新提供方本地状态。
Available Cluster 可用实例
使用方法
1  | <dubbo:reference cluster="available" />  | 
Mergeable Cluster 合并结果
使用方法
1  | <dubbo:reference cluster="mergeable" />  |