目标:把模块 10 的六个面(环境/密钥、可观测性、故障处理、权衡、升级、参考架构)各做一遍最小实操。全部实验不需要 API key——示例脚本用模拟上游离线运行。预计 90–120 分钟。
🎯 学习重点:先以退出码和断言建立两个离线脚本的可重复基线。
cd claude-architect-study/10-production/examples
python3 01_resilient_call_orchestrator.py # 应打印 7 个场景 + 全部断言通过
python3 02_cost_latency_estimator.py # 应打印 3 个 workload 对比 + 手工核算
✅ 检查点:两个脚本退出码为 0;01 脚本末行含「全部断言通过」。
🎯 学习重点:通过改重试次数与超时预算,观察瞬时错误如何转入降级或升级路径。
无需 key(模拟上游)。
01_resilient_call_orchestrator.py,找到 classify() 方法——对照 README 10.3.1 的错误处置表,确认四种分类(spend_cap / rate_limit / transient / permanent)的依据run_scenario 新增一个场景:504 timeout_error 出现一次后成功。先预测输出(它会被归为哪类、退避多久),再运行验证Orchestrator 的 max_retries 改为 0,重跑场景 1(529 两次后成功),观察行为变化并解释:为什么「关闭重试」会让可用性对瞬时抖动过敏TimeoutBudget 的 total_ms 改成 1,500 重跑场景 5,观察「预算耗尽 → 降级」提前触发——这就是超时预算的意义✅ 检查点:能用一句话说出「同样是 429,什么时候该重试、什么时候必须停」。
🎯 学习重点:逐码映射处置,尤其准确区分带 retry-after 与 spend-cap 两种 429。
对照官方 errors 文档(https://platform.claude.com/docs/en/api/errors,访问于 2026-08-30),手写补全下表(右列先遮住):
| 状态码 | error type | 你的处置 |
|---|---|---|
| 400 | invalid_request_error | ? |
| 401 | authentication_error | ? |
| 429(带 retry-after) | rate_limit_error | ? |
| 429(无 retry-after + enforced_spend_limit_reached) | rate_limit_error | ? |
| 500 | api_error | ? |
| 504 | timeout_error | ? |
| 529 | overloaded_error | ? |
✅ 检查点:与 README 10.3.1 表格逐行核对;两行 429 的区别必须答对。
🎯 学习重点:改变命中率和 workload 参数,用计算结果而不是直觉选择模型、缓存与 batch。
无需 key(价格表截至 2026-08-30 已内置,来源见脚本头注释)。
02_cost_latency_estimator.py,记录三个 workload 的推荐与理由cache_hit_rate 从 0.75 改成 0.3,观察推荐成本变化——解释为什么命中率跌一半、缓存收益跌得更多(写入 ×1.25 的未命中部分占比上升)name="代码评审机器人", 5,000 请求/日, 前缀 12,000 tokens, 动态 6,000 tokens, 输出 2,000 tokens, interactive=False, reliability_need="medium"。先手工预测推荐(哪个模型?缓存开吗?batch 开吗?),再运行验证✅ 检查点:能解释场景 B 为什么推荐「Haiku + 缓存 + Batches」而场景 C 推荐「Opus + 缓存 + 实时」。
🎯 学习重点:证明删除敏感内容后仍能保留 request_id、模型和 token 等可观测字段。
写一个 20 行的 redact.py(或纸面设计):输入一条模拟日志 JSON(含 user_email、Authorization 头、prompt 原文),输出脱敏后的日志(邮箱→***、凭证→计数、原文→长度+语言标签)。验收标准:
@ 符号的邮箱与 Bearer 字样✅ 检查点:能对照 README 10.2.2 的「该记/不能记」清单逐项自评你的输出。
🎯 学习重点:盘点配置与凭证生命周期,并设计可回退的新凭证切换顺序。
✅ 检查点:能说出「静态 key 退役」的完整顺序与每步的回退点。
🎯 学习重点:所有灰度比例、观察时长、阈值与成本上限都必须有数据或风险依据。
✅ 检查点:方案里每个数字都有理由(为什么 1% 起步、为什么观察 48 小时),而不是拍脑袋。
🎯 学习重点:不查资料完成错误、缓存、熔断、batch、密钥和退役迁移六类生产判断。
做完 6 个 lab 后,你应能不查资料回答(模块 10 验收线):