Java 后端面试题库 / 全部题解免费阅读理解原理,有条理地回答

Dubbo 有哪些集群容错策略?

先说出你的答案

定义边界、关键机制、一个反例;P8题再补容量、失败与验证。

查看完整题解

参考回答

直接回答

默认是 failover,遇到符合条件的失败后再选实例重试。还有 failfast、failsafe、failback、forking、broadcast 等。它们决定第一次调用失败时是重试、报错,还是转去做别的事。

讲清原理

failfast 单次失败就报错。failsafe 吞掉失败。failback 记录后在后台重试。forking 并行调多个实例,先拿成功结果。broadcast 面向向所有候选实例传播操作的场景。路由和负载均衡决定可用节点及选择哪个,容错策略决定要不要再调。

一次请求失败后,Failover 重新选择可用实例
一次请求失败后,Failover 重新选择可用实例

例子与易错点

查商品详情可以给一次重试机会。扣款请求如果已经成功,响应丢失后再调一台也会有重复扣款风险,策略必须配合业务幂等。

延伸阅读 Dubbo 默认的 Failover 会调用几次? · Dubbo 的读操作和写操作怎么选容错策略?

这道题,你掌握得怎么样?

掌握程度由你主动标记,阅读和收藏不会自动改变状态。