本章进度 8 / 18
44%
正文已完成
L301重试可能修复瞬时故障,也可能放大事故
根据错误类别、幂等性、退避与预算判断一次请求是否应该重试。
把“限流重试”从听懂变成会判断,避免遇到真实任务时仍靠感觉选择。
建议先理解同主题上一课的核心概念,再完成本课判断练习。
- 无需安装新工具
- 准备一个可对照的真实问题或样本
重试不是默认善意。网络抖动和临时 503 可能在稍后恢复,但参数错误、权限拒绝和非幂等写入盲目重试只会增加负载或重复副作用。可靠重试必须有分类、退避、抖动和总预算。
能区分可重试与不可重试错误,并识别重试风暴风险。
核心概念
先把关键判断说清楚
错误分类先于次数
超时、429、部分 5xx 可能暂时恢复;400、401 和 Schema 错误通常需要修输入或权限。
指数退避加抖动
逐次拉长等待并加入随机偏移,避免大量客户端在同一时刻同步重试。
幂等保护写操作
付款、发券和发送消息等副作用操作需要幂等键,才能安全应对响应丢失后的重发。
案例拆解
五次立即重试让数据库雪上加霜
数据库过载返回 503,数百个客户端立即连续重试五次,流量瞬间放大。
- 01
只对明确瞬时错误启用重试,认证与参数错误直接失败。
- 02
采用 1、2、4 秒指数退避并加入随机抖动,遵守服务端 Retry-After。
- 03
限制每次用户操作的总重试预算,并在耗尽后降级或转人工。
案例结果
恢复期间额外流量被控制,系统获得喘息时间而不是承受重试风暴。
提交前练习
现在轮到你
为三个不同错误写出是否重试及其依据。
完成本课需要:完成以下内容用于本课收口。
内容会自动保存在当前设备
查看参考答案与评分标准
参考答案
429是按 Retry-After 重试;401是不重试,刷新凭据或失败;连接超时是幂等请求最多重试两次,等待 1±0.2 秒、3±0.5 秒;总时长不超 8 秒,耗尽后返回可追踪错误。
评分标准
- 错误分类基于可恢复性
- 退避避免同步洪峰
- 预算和耗尽动作明确
本课收口 · 应用检查
完成一次应用,再检查理解
完成一次必填练习,再通过理解检查;阅读标记和总结不设硬门槛。
你现在更接近哪一种状态?
尚有必填项未完成,请补齐后再继续。
资料来源
继续核对与延伸阅读
本课内容最近更新于 。
- Monitoring Distributed Systems↗reference · 核对日期 2026-08-23
- NIST AI Risk Management Framework↗standard · 核对日期 2026-08-23