标准答案

  1. 先定义范围、负责人、停止条件和成功标准,例如下游变慢时核心写入不重复、非核心请求被拒绝。
  2. 逐步注入慢响应、连接失败、消息积压或锁竞争,记录限流、熔断、取消、降级和告警时间线。
  3. 恢复后验证缓存、消息、数据库和业务状态,对重复、丢失和未完成任务进行对账。
  4. 把演练发现转成配置、代码、Runbook 和监控改进,并保留可重复的实验记录。

题目解析

并发故障演练验证的是系统行为链:故障注入后是否限流、超时、降级或停止重试,告警是否及时,核心业务是否保持正确,以及恢复后能否重新接收流量。

演练必须从假设、范围、负责人和停止条件开始,并逐步注入一种主要故障。记录时间线比“组件重启成功”更重要,因为真实问题常发生在恢复和重试阶段。

恢复后要对缓存、消息、数据库和业务状态做对账,确认没有重复、丢失、永久 running 或错误降级。发现的问题应转成代码、配置、Runbook 和监控改进。

常见误区

  • 误区:只验证组件能否重启。改正:验证限流、降级、取消、重试、恢复放量和业务对账的完整链路。
  • 误区:没有停止条件就扩大故障注入。改正:提前定义用户影响、错误率和数据异常阈值,达到条件立即停止并恢复。
  • 误区:恢复后不做业务对账。改正:核对消息、订单、库存、缓存和幂等记录,确认状态已经收敛。

作者信息