学习目标
本人目前只有5年游戏后端的开发经验,最近几年越发感觉对于分布式开发吃力,本系列主要目的尽可能提升自己,且贴合游戏后端岗位经常面临的问题进行学习
我的技术栈主要是python、lua和skynet,之后代码示例使用这两个进行编写。
学习路线
- 先把「单服 → 多服」的分布式原语搞透
- 一致性协议
- 缓存和DB的一致性套路
- 消息队列在游戏的用法
- 把「状态」这件事想清楚
- 无状态 vs 有状态的边界重划
- 分布式锁 & 选主
- CAP / BASE 在系统里的具体取舍
- 规模化之后才会碰的东西
- 服务治理
- 跨服 / 全球同服架构
- 可观测性
学习成果检验
学到什么程度算「过关」?能回答这几个问题就差不多了:
-
现在的 Game 节点挂了,玩家会不会掉线、数据会不会丢、多久恢复?
-
充值回调过来,MySQL 写了 Redis 没写,补偿链路是什么?
-
跨服战 1000 人同时打,你的消息广播会不会把 CPU 打满?
-
合服脚本跑 4 小时,中途宕机怎么续跑?