知识卡片

级联故障的产生与弹性治理

专业/工作 · 270

内容

单个服务出现故障的概率可以很低,但当调用链上的服务数量变多、依赖关系变复杂后,低概率事件会必然发生——只要有足够多的独立环节,总有一个会先出问题。如果调用方对下游故障没有任何隔离手段(比如无限等待、无限重试),一个服务的故障会顺着调用链把耗时和压力传导给上游,上游被拖垮后又传给它的上游,最终演变成整个应用不可用,这就是级联故障。负载均衡、连接池、健康检测、熔断、超时、重试、限流这些手段的共同目标,就是在每一次服务间调用上都设一道止损阀门,把故障限制在最初发生的那一环,不让它顺着依赖链条继续放大。发散:这说明弹性设计的思路不是”消灭故障”(做不到),而是”给故障划定爆炸半径”。

参考来源

《Istio入门与实战》第8章《整体介绍》