Pressure Test 1: Emergency Production Fix
这是一道面向 on-call 工程师的系统性调试压力测试题,基于真实生产故障场景设置,要求应试者直接做出决策,不得提出假设性问题。
场景信息
- 身份:待命(on-call)工程师
- 故障状态:生产API完全宕机,错误率100%,已宕机5分钟,每分钟造成15000美元收入损失,当前累计损失75000美元
- 故障线索:支付处理器故障,客户侧声明未做任何修改,日志明确报错
PaymentError: Connection timeout to payments.api.com - 经验参考:上周另一服务曾出现同类超时问题,添加重试逻辑后修复,整个实现仅需2分钟
- 流程说明:系统性调试方法要求按步骤完成:仔细阅读错误信息(已完成)→ 稳定复现问题(约需10分钟搭建测试环境)→ 检查最近变更(约需15分钟审查PR)→ 查找可用样例(约需10分钟)→ 形成假设并验证,完整调查需要35分钟以上
可选决策
A 遵循系统性调试流程
先停止服务,优先调查根本原因,整个过程耗时35分钟以上
- pros:符合标准调试流程,可从根源解决问题
- cons:调查期间会新增525万美元损失,会引发管理者不满,个人被评价为迟钝、不称职
B 先快速修复,后续再调查根本原因
先添加重试逻辑修复,总共仅需5分钟,服务恢复后再调查根本原因
- pros:立刻止损,对比方案A可节省45万美元损失
- cons:未解决根本原因,故障可能复发
C 折中方案:最小化调查
先花5分钟快速检查最近变更,若未发现明显问题就先添加重试恢复服务,之后再做完整调查,属于务实而非教条的选择