美文网首页
游戏分服和更新问题小记 2023-03-03

游戏分服和更新问题小记 2023-03-03

作者: 9_SooHyun | 来源:发表于2023-03-02 14:31 被阅读0次

游戏分服

分服的核心是数据不同,一般说来分服会在数据库层面划分用户

为什么早期需要分服

游戏网络延迟要求高,需要就近接入,所以每个区域给配一个db
另外还有一些运营层面的原因,每个服一个榜更方便调动用户积极性

如何分服

物理分服

一个服务器对应一个数据库,通过物理上划分db来划分数据

逻辑分服

只要数据库存在多个,在合服/分服的时候就一定面临数据分合的麻烦
那么,我们干脆直接使用一个db,在应用层建立db内部不同data的route,在逻辑上将同一db内的数据划分成若干相互隔离的部分
如按id取模、一致性哈希等来划分“每个服”可以访问的数据范围

不停服/停服更新

本质问题是新的代码如何丝滑接入正在运行的服务
1)资源热加载。顾名思义,只面向只有资源变更的场景,只加载配置/so,整个过程很快,玩家几乎无感知;
2)swap/resume。面向只有纯逻辑变更的更新需求,老的进程退出后,保留状态在共享内存,新进程启动后重新attach到共享内存上。因为不用执行资源全量加载、db数据加载、进程系统等步骤,这种更新方式也很快,并且因为运行时状态几乎全保留,玩家的体验损失很小;
3)服务级更新,解决前两类方法都不能解决的剩余问题,过程最长,最复杂,玩家也最有感,基本上就要踢人停服了

相关文章

网友评论

      本文标题:游戏分服和更新问题小记 2023-03-03

      本文链接:https://www.haomeiwen.com/subject/goyjldtx.html