技术白皮书
本章解释框架要解决的问题、设计选择、失败恢复与适用范围,供需要定制算法、存储或控制策略的开发者阅读。 日常增加 RPC、服务、组件和配置,先使用开发快速上手和组件接入指南。
阅读路线
| 要解决的问题 | 文档 | 主要内容 |
|---|---|---|
| 多个订阅者同步同一个对象,断线后修复状态 | WAL 与状态复制 | 日志顺序、增量同步、快照、压缩、持久化与迁移 |
| 多个资源所有者共同完成一次操作 | 分布式事务 | 全局决议、资源冲突、幂等执行、恢复与清理 |
| 把运行指标转为可执行的业务策略 | 可观测性与动态策略 | 指标语义、采集、查询、策略发布和应用 |
| 有状态服务扩缩容时保留服务能力 | HPA 控制器 | 副本计算、Target/Ready 分阶段切换 、Kubernetes 接入 |
| 业务指标如何应用于交易和战斗 | 指标驱动的应用场景 | 订单撮合、搜索索引、匹配与战斗房间预创建 |
实现与设计的范围
白皮书中的“当前实现”对应仓库中的协议、SDK、服务与配置。“接入方案”和“建议”描述业务方需自行实现并验证的逻辑。 三个应用场景举例说明业务指标的用途,具体指标与决策逻辑由业务定义并接入。 仓库包含交易相关的服务发现选择器,不能据此认定已有完整交易行实现。
| 已有能力 | 接入方仍需完成的工作 |
|---|---|
| WAL 发布者、订阅者、快照与校验回调;dtmq、排行榜、组队中的接入 | 定义日志和快照语义、存储持久性、可重放的业务动作 |
| 事务协调者、客户端、参与者及恢复协议 | 一致保存业务数据与参与者快照,实现幂等动作和资源锁范围 |
| RPC trace、指标导出、Prometheus 查询、自定义策略、etcd 监听 | 定义业务指标、数据有效性条件、策略算法与执行器 |
| HPA 副本建议、Target/Ready 选择、迁移检查回调 | 部署指标适配器、注册业务检查、执行资源创建和对象转移 |
“通知已发出”“状态已写入缓存”“副本已创建”“迁移已完成”是不同阶段。 设计时分别定义完成条件、重试方式与失败后的可查询状态,不以一次超时推断操作没有发生。
设计与验证方法
先定义不变量,例如一个资源只有一个有效写入者、已确认事务决议不可反转、缩容不能越过仍持有状态的节点。 再列出故障发生的位置:写入前后、回应丢失、重启、网络分区、指标过期、策略发布和对象转移。 为每个位置确定幂等键、版本检查、恢复入口和可观测指标。
各篇按内容给出实现入口、公开参考资料和验证清单。清单是接入时应执行的检查,不能代替真实环境的故障验证。 现有单元测试的覆盖范围与端到端部署验证分别说明。