集成与部署
FDE 의 결과물은 데모 슬라이드가 아니라 고객 환경에서 계속 돌아가는 코드입니다. 이 코스는 그 마지막 구간을 다룹니다. 문서가 부실한 HTTP API 에 붙어 페이지네이션과 재시도를 처리하고, 401 과 403 을 단서로 인증 문제의 계층을 좁히고 인증서 실패 모드를 구분하며, 마지막으로 지금까지 찾아낸 원인을 비엔지니어가 읽을 장애 보고서로 옮깁니다. 마지막 실습은 명령이 아니라 산출물을 채점합니다.
고급 · 레슨 30 · 实验 10
커리큘럼
HTTP API 集成
- 连接被拒和超时,是两条完全不同的消息 reading
- 接一个文档很薄的 API lab
- 测验:HTTP API 集成 quiz
认证与 TLS
- 401 是「不知道你是谁」,403 是「知道但不行」 reading
- 401 与 403,以及证书 lab
- 测验:认证与 TLS quiz
故障响应中的沟通
- 能承诺的不是解决时间,是下次汇报的时间 reading
- 写一份故障报告 lab
- 测验:故障响应中的沟通 quiz
重试制造的重复
- 超时之后再重试,会发生什么 reading
- 对付一个会丢响应的支付 API lab
- 测验:重试制造的重复 quiz
悄悄变了的契约
- 有个字段改了名,却没有抛出异常 reading
- 一个字段改了名,只有合计悄悄错了 lab
- 测验:契约与版本兼容 quiz
当我们是接收方
- 不是我们发起的调用,而是我们接收的推送 reading
- 订单状态有时会倒退 — 把接收的那一侧做出来 lab
- 测验:接收 Webhook quiz
时间也有预算
- 把超时设得宽裕,反而把故障放大 reading
- 对方变慢了,先倒下的却是我们 lab
- 测验:超时预算 quiz
过期不是事故
- 令牌本来就会过期 reading
- 夜间批处理每次都有几笔死在 401 lab
- 测验:令牌寿命与刷新 quiz
拉取的同时,源头也在变
- 你在读的时候,源头还在变 reading
- 每天都全量拉取,却每次都少几行 lab
- 测验:可续传的批量同步 quiz
返回 200 不等于全部落了地
- 请求返回了 200,却有三笔不见了 reading
- 我们的日志全是成功,对方却少了十二笔 lab
- 测验:部分失败与对账 quiz
参考文档
- 官方文档 · www.rfc-editor.org · rfc9110.html
- RFC 6585 — Additional HTTP Status Codes (429 Too Many Requests)
- RFC 2104 — HMAC: Keyed-Hashing for Message Authentication
- RFC 6749 — The OAuth 2.0 Authorization Framework
- 官方文档 · www.rfc-editor.org · rfc7519.html
- JSON Schema 2020-12 Core (required·additionalProperties)