[闲聊] D4 Beta 云分析

楼主: Portentera (SupP)   2023-03-27 13:31:50
以下都是我自己的心得以及推测
从系统面以及架构面不负责任的分析
先聊聊困难点
接着根据两周的测试体验
在游戏中的一些细节推敲
暴雪是如何办到的
[困难点1:物理距离延迟]
亚洲与欧美之间的延迟
相信在 D2R, D3 已经深有体会
该如何让大家在游戏中
大幅减少延迟造成的不适感
便是全球同服面向玩家最大的困难点
[困难点2:资料同步]
尽管是全球同服
也不可能一座数据库便能面向全球
而资料如何落地便是一门学问
常见的做法是在各地都建数据库
最后将数据库兜成一个集群
让世界各地不同端点连线
连线时与最近的数据库进行存取降低延迟
但发生短时间大量存取时
该如何同步到所有的数据库
也会是巨大的挑战
D2R 的玩家应该深有体会
逼狗时把三服都搞炸,还发生蛮多次的
就是短时间大量存取,且资料尚未同步造成的
因为欧美玩家跑到亚洲,亚洲玩家跑到欧美
资料无法即时同步,甚至发生脑裂导致数据库死掉
而处理这种状况,只能将资料回到某个时间点
才会有玩家反应回溯的情况
[解法:游戏分流]
游戏中可以发现到
在路上会巧遇路人玩家
不用组队便可以一同解地图事件
尤其在世界王时体会更深刻
分流
将物理距离相对近的玩家聚在一起
既可以降低数据库的负担
又可以同时让玩家游戏体验更佳
(距离远的聚在一起,一定有人要扛高ping)
也就是正常游玩下
在台湾多数只会遇到中日韩玩家
[衍生问题:地图加载]
由于游戏分流造成地图加载时
有许多状况需要额外处理
这次有玩家反应
隐形墙、场景&物件未生成(祭坛、怪物等等)
其实就是地图加载时
游戏还卡在等待服务器回应请求(Request)
也就是卡在该把你扔到哪个分流去
才会有先回城再出来就排除状况的解法
在实务上常见做法还是排队
只要有合理的队伍数量(Queue)跟足够的处理人员(Consumer)
照来说服务器可以即时消化所有的请求
现今程式开发多会以具平行扩展的集群为基础架构
概念即统一对外窗口,而且可以喊请支援收银
而运行程行的系统(或平台)都会有自动扩展的功能
概念就是系统发现人力不足会自动支援收银,不用在特地广播
这方面我认为暴雪还在评估该开多少资源处理
毕竟真的很影响游戏体验
以上就是我个人不负责任的推论以及分析
至于家机跟跨平台没接触到就不通灵了
感谢大家花时间看完我野人献曝
作者: kazureyesean (none)   2023-03-27 13:45:00
推,应该是内行人,我也感觉到D4的server端的架构跟以前D2D3有很大差异有点奇怪,前面一堆游戏心得文随便举个简单的点都不会被嘘,分析云端架构就要像论文一样精彩?
作者: edward198791 (草莓新)   2023-03-27 14:09:00
P大给推

Links booklink

Contact Us: admin [ a t ] ucptt.com