posts

文章归档

PlumePHP 全站文章的归档入口,按时间倒序汇总各专题的技术文章,并提供按主题浏览的专题分类入口。

这里是全站文章的归档入口,下面是按时间倒序排列的全部文章。若想按主题浏览,请从首页的专题分类进入。

全部文章

全部文章 Golang Game Minigame Saas Rust Python Java 游戏开发 客户端开发 GameDev
mmo

《MMO 服务器开发》10.3 事件溯源与审计

玩家申诉「我昨天明明有 3 件装备,今天只剩 1 件」,光看当前背包答不出来——因为没有历史。本节给资产系统装上事件溯源:append-only 的事件流、定期快照、以及从零重放,并写一个可跑的审计查询,回答「某玩家某天的资产为什么变了」。断言重放结果与快照一致、窗口解释能列出当天每一笔增减及其来源,并指出快照与重放如何互为校验。

7 分钟阅读
MMO 游戏服务端 分布式
mmo

《MMO 服务器开发》10.2 对账与数据修复工单

跨服结算和本服流水对不上,差在哪、谁来修、修完谁签字?本节先把对账口径钉死——谁对谁、按什么周期、比哪些字段;再给差异分级:金额类必须逐笔一致、展示类可以容忍;然后用 aegis 的 recon 包写一个可跑的对账器,造出若干差异样本,断言分级正确、可镜像的被自动修复、金额冲突的生成带审批留痕的修复工单。

7 分钟阅读
MMO 游戏服务端 分布式
mmo

《MMO 服务器开发》10.1 跨服务事务与补偿

跨服发奖发到一半崩了怎么办:点券扣了奖励没到、奖励到了流水没记。本节把跨服务事务的三种方案摆开——2PC 为什么不适合游戏服、TCC 的冻结确认撤销、Saga 的编排式与编舞式——并用 aegis 的 saga 包实现一套可跑的 Saga 状态机与补偿动作,断言正向全成功状态一致、中途失败逐个补偿回到一致态、补偿自身失败时重试并打上人工介入标记。

8 分钟阅读
MMO 游戏服务端 分布式
mmo

《MMO 服务器开发》1.3 本书范围与站内服务治理文章的分工

站内已经有一大批游戏服务器架构文章,卷一写了网络内核、卷二写了单服玩法,那这一卷《分布式与跨服》到底写什么、不写什么?本节把三份内容的分工摊开讲清楚:站内架构文负责「应该怎么设计」,卷一与卷二负责「底座与单服怎么写」,本卷负责「集群与跨服从零实现并跑出数字」,并把这条边界编码成一张可查询、可测试的表。

11 分钟阅读
MMO 游戏服务端 分布式
mmo

《MMO 服务器开发》1.2 什么时候该拆、什么时候不该

上一节定下了集群拓扑,但拆不拆是另一回事——拆分从来不是免费的。这一节先列出一份拆分成本清单:一次 RPC 换来多少容量、又付出多少延迟与运维面,再把「单服能扛到多少 CCU 才值得拆」拆成三道可判定的闸门,最后用一个能跑的容量-拆分决策函数把这三道闸门编码成代码。

7 分钟阅读
MMO 游戏服务端 分布式
mmo

《MMO 服务器开发》1.1 分区分服与集群拓扑

卷一造出了单机的网络内核,卷二装上了单服的玩法系统,可一旦在线人数上来,一台机器就扛不住了。这一节先把集群的三条路线——分区、分服、全球同服——摊开对比,再把网关、场景、战斗、世界、目录五类节点的职责边界定清楚,最后用一份能跑的 Go 代码把「哪个节点持有什么状态」钉成断言。

9 分钟阅读
MMO 游戏服务端 分布式