跳到正文

生产检查清单

将此清单作为发布门禁,并根据应用威胁模型和可用性要求进行调整。

协议与应用

  • [ ] 路由 ID 唯一、稳定且 >= 100
  • [ ] Protobuf 变更在滚动发布窗口内向后兼容。
  • [ ] 客户端重试复用 Request ID,并使用有界指数退避。
  • [ ] Handler 超时、幂等与事务行为已测试。
  • [ ] 压测覆盖预期并发、载荷、重连与 Push。

密钥与网络

  • [ ] 票据密钥、内部令牌和管理令牌是不同且至少 32 字节的值。
  • [ ] 已记录密钥轮换与回滚流程。
  • [ ] 只有 Gateway 客户端监听端口公开。
  • [ ] World 与管理监听受防火墙/NetworkPolicy 隔离。
  • [ ] 公网 TLS 和内部 TLS/mTLS 符合威胁模型。
  • [ ] Proxy Protocol 只信任已知负载均衡器 CIDR。

分布式正确性

  • [ ] 多 Gateway 共享 Replay Store。
  • [ ] 重复登录策略已配置所需在线目录与会话控制传输。
  • [ ] 在线看板区分已认证 Session 数和按 user_id 去重的用户数。
  • [ ] 持久在线投影会与 Lease 过期结果对账,而不是只依赖 SessionObserver
  • [ ] 业务需要时已配置跨 Gateway Push。
  • [ ] 服务发现及时移除未就绪或已终止的 World。
  • [ ] 有状态 World 使用所有权与 Epoch 策略。
  • [ ] Redis Cluster Key Prefix/Hash Tag 满足相关操作要求。
  • [ ] Outbox Dispatcher 可运行、排空、重试并独立暴露健康状态。

容量与韧性

  • [ ] Gateway 连接、单 IP、队列、限流、载荷和超时限制已调优。
  • [ ] World 连接和并发限制与 Gateway 连接池容量匹配。
  • [ ] 已通过故障测试验证熔断阈值。
  • [ ] 资源 Request/Limit 与自动扩缩指标基于压测结果。
  • [ ] 终止宽限期大于排空/停机超时。
  • [ ] PodDisruptionBudget 与实际副本数匹配。

实时模拟

  • [ ] 输入目标 Tick、冗余、乱序和重放窗口有明确上限并经过测试。
  • [ ] Scene 所有权能够阻止同一个逻辑比赛同时在两个 World 上模拟。
  • [ ] 固定步长追赶上限和过载行为已经明确。
  • [ ] AOI 和状态同步流按观察者与 Scene 分区,而不是全局维护。
  • [ ] 预测、插值、状态同步和倒带 Capacity 根据实测 RTT 与抖动设定。
  • [ ] 预测和延迟补偿快照只包含模拟或碰撞所需数据。
  • [ ] 弱网测试覆盖丢包、抖动、乱序、重复、队列压力和受限带宽。
  • [ ] 历史命中验证在结果被接受前不能修改实时状态。

运维

  • [ ] 已监控健康、就绪和版本端点。
  • [ ] 必要时使用管理认证抓取 Prometheus 指标。
  • [ ] 告警覆盖就绪、错误率、饱和度和熔断打开状态。
  • [ ] 日志包含 Trace、Request、Route、Session 和实例标识,但不包含密钥。
  • [ ] 管理修改只能通过可审计的运维路径执行。
  • [ ] 仪表盘和事故 Runbook 已在演练中验证。

基于 MIT 许可证发布。