posts

文章归档

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

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

全部文章

全部文章 Books game Java Indie golang 客户端开发 Minigame Saas rust Python
game

《游戏服务端编程实践》15.4 实战:构建游戏监控看板

按业务总览、系统健康、单服下钻三层拆解游戏监控看板,说明症状告警优于原因告警、持续时长与抑制静默的配合、登录成功率和对局完成率的 SLO 与错误预算落地,并用 Go 实现跨分片指标聚合与带持续时长、恢复通知的阈值告警状态机,最后给出值班可执行性检查清单。

10 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》15.3 ELK / Loki / Prometheus 集成

从日志、指标、追踪三类信号的职责与成本讲起,分析 Prometheus 拉模型下标签基数爆炸的成因、直方图桶的取舍、Loki 与 ELK 的索引成本差异,以及 Sidecar、DaemonSet、Agent 三种采集架构的适用边界,并用 Go 实现一个可校验、可转义、可被文本解析器读取的导出器。

8 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》15.2 埋点与日志系统

从事件名、公共属性、自定义属性与用户设备标识讲起,说明埋点版本与字典、批量压缩上报、失败重试、本地落盘、采样与全量的取舍、结构化日志分级、敏感信息脱敏与保留周期,并用可运行的 Go 批量上报器演示缓冲、定时 flush、重试不丢数据和采样比例。

8 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》15.1 游戏指标体系设计

从 DAU、WAU、留存、付费率、ARPU 到 QPS、P99、错误率与队列积压,说明业务指标和技术指标的口径定义、分子分母、去重窗口、时区与分层成本,并用可运行的 Go Counter、Gauge、Histogram 演示计数、分位数估算和窗口重置,最后复盘同名不同口径导致的线上分析事故与常见边界。

11 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》14.4 实战:服务重启不中断设计

围绕服务重启不中断,拆解优雅停机的五步顺序、摘流量与在途请求排空、会话与连接迁移、滚动发布的容量预留与分批策略,以及信号处理、超时兜底和可观测设计,并给出一个带在途统计、超时强制退出与最后快照的可测试实现,分析完整的失败场景,并列出常见错误与边界。

10 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》14.2 重试、断路器与回退机制

说明哪些错误值得重试、指数退避与抖动如何避免重试风暴,拆解断路器从关闭到打开再到半开的状态机与失败率阈值,讨论默认值、缓存和功能降级三类回退及其可观测性,最后给出带半开探测与抖动退避的 Go 实现和测试,并结合登录、支付回调与匹配队列的故障场景说明参数取舍。

8 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》14.1 心跳与健康检查

从心跳间隔、超时窗口与连续丢失次数的关系讲起,解释为什么秒级摘除容易误杀,区分 liveness 与 readiness、启动探针、优雅下线、连接排空,分析心跳风暴、批量上报、跨机房时钟与网络抖动,最后给出带容忍次数和恢复确认的 Go 心跳检测器、测试与常见错误清单。

9 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》13.3 CPU/内存 Profiling

从 CPU、heap、goroutine、block 与 mutex 五类剖面出发,讲清 pprof 的采样开销、火焰图自顶向下找热点的方法、自身耗时与调用耗时的区别、-gcflags=-m 逃逸分析命令,以及生产环境限时、限频、低采样率、独立端口的采集边界,并给出可被 pprof 采集的热点函数与分配函数示例及正确性测试。

11 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》13.1 Goroutine/Actor 调度优化

从 GMP 调度模型出发,解释 goroutine 数量、阻塞系统调用与 P 绑定对游戏循环的影响,对比 Actor 与锁的取舍,给出 worker pool、批量处理和减少锁内 I/O 的优化手段,并用 benchmark 说明何时优化有效,最后附一个带缓冲 mailbox、支持背压与优雅关闭的 Actor 实现及测试。

13 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》12.4 数据分片与多租户模型

本篇比较玩家 ID、公会 ID、区域三种分片键,拆解取模、一致性哈希与范围分片的扩容迁移、双写切换和多租户隔离,并给出可运行的 Go 路由实现,以及迁移比例、分布倾斜、路由确定性、跨片聚合和构造校验的完整测试边界、常见错误与扩容事故复盘说明。

10 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》12.3 状态一致性与幂等性

本篇按强一致、读己之写、最终一致给玩家可见状态分级,讲清版本号 CAS、幂等键与请求指纹、重试乱序和跨服务补偿对账,并给出可运行的 Go 幂等表实现,以及并发冲突、重复请求、过期重执行、失败不缓存和指纹冲突的测试边界与事故复盘,覆盖接口设计和部署边界。

11 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》12.2 Redis + MySQL 混合持久化

从 Redis 与 MySQL 的职责边界出发,比较写穿、回写与双删的代价,分析更新顺序、并发窗口、缓存失效与热点 key 的处理,并用 Go 的内存 cache + store 实现版本号协同、回源读与并发写测试,说明缓存不能作为唯一存储的原因,最后给出可运行的验证与排错清单。

12 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》12.1 实时状态与快照策略

围绕游戏热状态的分层、全量快照与增量日志的组合、快照频率与恢复时间的权衡、写时复制与分代快照展开,给出崩溃恢复与日志截断的可执行流程,并用 Go 实现可按版本恢复的快照存储;文章还分析只做定时全量、日志先删后持久化、快照阻塞主循环三类常见故障。

9 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》11.5 实战:服务间事件调度系统

实现一个服务间事件调度器,覆盖订阅注册、按 topic 路由、按玩家或房间 key 串行、并发上限、指数退避重试、死信与重放,并测试同 key 顺序、跨 key 并行、重试后进死信以及修复后的死信重放,最后给出分区与消费者数量的取舍,帮助读者把顺序保证与吞吐目标同时落地。

7 分钟阅读
game server game in action game server development tutorial complete
game

《游戏服务端编程实践》11.4 微服务间通信模式(同步/异步)

对照同步请求-响应、单向事件、消息请求-响应与编排/协同四种通信形态的失败语义,用 Go 实现同一笔充值订单的同步调用与异步事件两条路径,并测试同步超时降级、异步最终一致与重复事件幂等,给出选型判据和常见错误清单,帮助读者判断何时该等待结果、何时该接受最终一致。

8 分钟阅读
game server game in action game server development tutorial complete