很多玩家都反映魔兽世界怀旧服游戏上不去,其实这是上线时出现的一个大范围问题,目前可知的是这因为服务器的故障登录玩家过多导致。魔兽世界怀旧服的服务器一直也不是太好,而且今天还会同步更新厄运之槌副本,所以这个问题还是要等官方修复。
故事背景(黑石之祸)
经历了天灾入侵的艾泽拉斯大陆满目疮痍,费伍德森林变成了一片死地,提瑞斯法林地游荡者那些早已死去却又一次站起的腐朽身躯,夜色镇终日浓雾弥漫,希利苏斯的沙漠中暗流涌动,洛丹伦王国覆灭,伊利丹背叛暗夜精灵被流放外域。
阿尔萨斯这个曾经的王子终于登上了冰封王座,成为了坐镇诺森德的新巫妖王,似乎战争暂时平息,因为战争部落和联盟达成的那些脆弱的协议似乎已经逐渐被人遗忘。
web服务器每个client都是独立的,(hostspace)游戏服务器不同client是有交互有状态,会实时地互相影响。这导致很多设计上的差异。并发架构的影响
在高并发下,对client请求进行负载均衡并不如web那么简单,因为client状态会互相影响,并且可能共享写数据甚至有时序依赖。大型mmorpg通常是长连接,并发服务数通常要远小于web服务器 。根源就是实时性和强交互性的限制,两者要求越低的游戏,并发就可以做得越高。
web服务运算较少,io密集,读多写少。游戏服计算和io都密集,读写都频繁
对代码风格的影响
比如开发web服务,基于nginx的openresty就很好用,利用了Lua的协程和异步io,写起来很流畅而不失性能。但用来做游戏服务器,协程却可能是个坑,因为游戏依赖很多上下文环境,当协程被唤醒时,上下文环境改变,协程的代码风格很容易用了旧变量导致逻辑错误。
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)