← 中文资源

简体中文版本

依赖隔离工作流

隔离故障依赖,使其中断只影响需要它的功能,而不在系统中级联。

阅读英文原文

目标

应隔离故障依赖,把影响限制在依赖它的功能上。本工作流先确定哪些功能依赖该依赖及依赖方式,用舱壁或熔断限制并发调用并跳闸,避免故障耗尽共享资源,对可容忍的功能提供缓存或降级数据,最后模拟故障确认仅依赖功能降级而无关功能健康。

步骤要点

  1. 确定依赖该依赖的功能与依赖方式。
  2. 用舱壁或熔断限制并发并在故障时跳闸。
  3. 对可容忍功能提供缓存或降级数据。
  4. 模拟依赖故障确认仅依赖功能降级。
if breaker.isOpen('payments') { return fallback() }

验证

按顺序执行上述步骤后,逐项确认每个步骤的预期状态均已满足;只有全部预期状态成立,才认为本流程完成。若某一步未达到预期状态,应先按排错提示排查,不要跳过继续,以免掩盖问题。

排错提示

  • 共享资源池会让一个依赖饿死整个服务。
  • 没有降级会把局部故障变成整体故障。
  • 未知依赖图会拖慢隔离决策。

适用边界

  • 需要熔断或舱壁机制。
  • 按依赖分别设置舱壁。