NOTE

1.14 分布式系统故障

1. 什么是分布式系统故障 某个节点宕机或者网络不通 2. 如何检测分布式系统故障 2.1. 心跳检测 2.2. Gossip协议检测 分布式一致性算法之Gossip.md 3. 如何处理分布式系统故障 3.1. 故障转移(Fail-Over) - A调用B,如果B出现故障,且B有其他副本,那么A转

分布式系统创建于 更新于 historical

这是历史学习笔记,可能存在过时或不完整的理解。

1. 什么是分布式系统故障

某个节点宕机或者网络不通

2. 如何检测分布式系统故障

2.1. 心跳检测

2.2. Gossip协议检测

分布式一致性算法之Gossip.md

3. 如何处理分布式系统故障

3.1. 故障转移(Fail-Over)

  • A调用B,如果B出现故障,且B有其他副本,那么A转调B的其他副本

3.2. 快速失败(Fail-Fast)

  • A调用B,如果B出现故障,那么A立即往外抛出失败

3.3. 安全失败(Fail-Safe)

  • A调用B和C,如果A->B是主路,而A->C是旁路,那么可以忽略A->C的失败

3.4. 沉默失败(Fail-Silent)

  • A调用B,如果B出现故障,默认B一段时间内无法正常工作,那么之后A不再调用B,直接返回失败

3.5. 故障恢复(Failback)

  • A调用B,如果B出现故障,从B的备用副本恢复后继续工作

3.6. 并行调用(Forking)

  • A调用B,并行调用B的所有副本,只要一个成功那么就成功

3.7. 广播调用(Broadcast)

  • A调用B,并行调用B的所有副本,所有成功才成功

4. 参考