65 lines
3.6 KiB
Markdown
65 lines
3.6 KiB
Markdown
# 生产就绪检查表
|
||
|
||
## 架构与一致性
|
||
|
||
- [x] Gateway 热路径依赖审计确认无 PostgreSQL、Redis、Provider 或模板执行。
|
||
- [x] 每个 Proxy 同一时刻最多归属一个 Worker,ownership epoch 单调。
|
||
- [x] Reserved -> Active 使用单个原子转换,无超卖与负计数。
|
||
- [x] Sequential 并发 Empty 只切换一次,旧 Upstream Proxy 自然耗尽;末端 `stop`
|
||
使用权威 CAS 停用 Routing 并刷新 Gateway 快照。
|
||
- [x] `pool.maxSize` 与 `fetch.maxTotal` 分别按当前库存和累计获取计数。
|
||
- [x] Extract 只有 `AVAILABLE -> EXTRACTED`,OpenAPI 不存在 release/renew。
|
||
- [x] Extract 状态更新和短期幂等结果位于同一个 Redis 原子操作。
|
||
- [x] PostgreSQL 中不存在 Proxy 明细或逐次提取记录。
|
||
- [x] `partial` 和 `allOrNothing` 均通过 Redis 原子并发测试。
|
||
- [x] `reserveForGateway` 在所有提取路径上统一执行。
|
||
|
||
## 安全
|
||
|
||
- [x] 非回环监听均配置 Auth 或 allowCIDRs,严格模式已开启。
|
||
- [x] Gateway、Distribution、Admin 凭据和权限相互独立。
|
||
- [ ] trusted proxy 只包含受控 LoadBalancer/Ingress 网段。
|
||
- [x] 解析前后均拦截私网、回环、链路本地、元数据地址与 DNS Rebinding。
|
||
- [ ] Secret 由外部密钥系统注入,镜像、ConfigMap、日志没有明文。
|
||
- [ ] 所有 Controller 使用同一枚至少 32 字节的独立配置 HMAC 密钥,并完成轮换演练。
|
||
- [ ] Pod 以非 root、只读根文件系统、无 Linux capabilities 运行。
|
||
- [ ] NetworkPolicy 默认拒绝,外部数据库/Redis/Provider 网段已收紧。
|
||
- [x] Provider 模板有响应大小、执行时间、函数与外部访问限制。
|
||
|
||
## 可用性
|
||
|
||
- [ ] PostgreSQL 跨可用区,有监控、备份和恢复演练证据。
|
||
- [ ] Redis 跨可用区并受监控,完成丢失后由 Provider 重建活动池的演练。
|
||
- [ ] Gateway、Controller、Checker 均跨主机/可用区分散。
|
||
- [ ] PDB、优雅终止与最大连接时长的组合经过驱逐测试。
|
||
- [x] Controller 断线时 Gateway 在 `maxStaleAge` 内继续,超限拒绝新请求。
|
||
- [x] Worker 崩溃后 ownership 只在租约过期后再分配。
|
||
- [x] Snapshot 版本缺口触发全量同步,旧 Delta 被拒绝。
|
||
|
||
## 性能
|
||
|
||
- [ ] 单 Worker 基准使用生产同规格硬件、网络、TLS 和 Snapshot 规模。
|
||
- [ ] 完成 10k 稳态、100k 峰值、CONNECT 活跃连接和建连速率独立测试。
|
||
- [ ] 在最大可用区失效时仍满足容量和延迟 SLO。
|
||
- [ ] 目标利用率不高于 60%,HPA 缩容稳定窗口不低于 10 分钟。
|
||
- [x] 队列、buffer、日志和结果上报全部有界。
|
||
- [ ] p99 Dispatch 预算、端到端延迟、错误率、CPU、RSS、FD 和网络有原始证据。
|
||
|
||
## 观测与值班
|
||
|
||
- [x] 仪表盘覆盖 Gateway、库存、Provider、Extract、Snapshot、Checker 和 Drain。
|
||
- [ ] 告警有负责人、严重级别、Runbook 链接和演练记录。
|
||
- [x] 指标无 Proxy IP、Client ID、Session、完整 URL 或 request ID 高基数标签。
|
||
- [x] 日志脱敏已用真实 Secret fixture 验证。
|
||
- [ ] 值班人员完成 PostgreSQL、Redis、Snapshot、容量与 Extract 故障演练。
|
||
|
||
## 发布门禁
|
||
|
||
- [ ] `go test ./...`、race、vet、build 全部通过。
|
||
- [ ] OpenAPI/Proto 兼容检查通过。
|
||
- [ ] Compose、Kustomize、Prometheus、HAProxy 配置静态校验通过。
|
||
- [ ] 数据库迁移已在生产数据量副本上演练,并有回退或前向修复方案。
|
||
- [ ] 100k QPS 验证报告包含环境、命令、版本、场景、原始指标和结论。
|
||
|
||
任一关键一致性、安全或恢复项未完成时,不标记生产就绪。
|