从技术层面分析我叫MT2跨服卡的问题

2015-08-18 10:33:28作者:lingfeng_1012

从技术层面分析我叫MT2跨服卡的问题,今天应该验证了一个数据死锁的问题,从中午12点到下午5点和昨天一样完全卡死,照理说下午2点到5点并不是游戏高峰时间,那很大可能是数据上有死锁,在并发更新数据时产生了死锁,导致后面的数据读取和更新都有问题,然后技术人员可能在5点找到了原因重启了对应的服务或者kill了死锁,然后就无比顺畅。

以下是昨天在其他帖子的回复

跨服卡根源上是技术问题

1、排名实时统计:每个玩家的每场战斗都会实时计算排名(相互产生影响),战斗结果并发一旦高,运算量就会非常大,如果算法没处理好,运算量是几何级的上升,说不定还会引起数据锁的问题,所以会发现越热的时间段越卡。

2、排名实时查询:大家可以发现排行榜中的跨服排行是实时刷新的,每次点进去会有加载的过程,这意味着服务器是实时查询和反馈结果的,并且传回客户端,如果这时候结果还在频繁变化,那么可想而知这个效率有多差。排行中像战力榜这种就是非实时的,要重新登录才会刷新。

3、换一批机制:换一批对手对玩家很有帮助,但是对服务器的开销也不小,也是实时需要服务端实时计算和返回数据的,这周新增的“喝口茶”就是为了避免刷新并发过高,结果套用一句最流行的话“然并卵”。

以上是主因,其他一些就不细述了

从策划和产品UE的角度来看,他们对于跨服的实时数据要求并没有错,因为实时对于用户的体验是最好的,但是系统的设计开发人员并没有把实时带来的性能问题强调出来,可能觉得能搞定也可能策划和产品太强势。

整个团队的问题是压测不充分、对于问题的反应太慢、抱着侥幸的心理应对等等。

最后要说的搞不定实时体验就退一步,别对自己团队的能力太自信,被打脸这么多次了还不彻底调整。

如果是数据死锁的问题,开发能彻底解决,那后面的跨服性能问题都会得到很大的改善。

相关新闻

游戏狗>我叫MT2>正文