高延迟正在毁掉在线游戏 这个头痛问题如何解决?
- 来源:界面
- 作者:skylark
- 编辑:豆角
作为标准的“真实用户指标”
如果没有定量分析,你就无法改善任何情况。所以,如何衡量游戏延迟,这些方法就是游戏产业现在亟需解决的问题。
因为游戏产业本身的高科技背景,从业者们很快就发现运用真实用户指标(RUM)的结果要比单纯的流量监测要管用得多。如果你监测的数据总是给你错误的导向的话,你就无法找到突破问题的关键所在,也就一筹莫展。
如今,游戏公司已经开始重视游戏社群对问题的反馈了,但他们做的还远远不够。只有当 RUM 成为最优先的考量时,玩家和游戏之间的联系才算是真正得以建立。
这当然是最重要的一步,然而,这样做也会带来一些麻烦,比如:
如果没有一个社区来提供 RUM 数据,可能会缺乏足够的研究样本;
RUM 是很复杂的一类数据,如何正确衡量各个变量之间的变化关系是比较困难的,而以偏概全的分析方法又会带来结论性的错误。
为了解决上述问题,游戏公司必须要想办法发展一批能提供 RUM 数据的用户。对于一个孤立的游戏公司来说,这样做每日需要成千上万的互动。但游戏公司的主要精力用在这方面是显然不足的。如果没有充足的数据支撑,最后当你做决策的时候还是得靠蒙,而瞎蒙并不是一种好的战略。

三种解决方案
下面列出了三种网络工程师主要用来解决问题的方案:
添加更多的服务器
加入更多的点对点互传
将负载分发给复数个分发者和网络位置
第一种方式不太管用的主要原因是,只有当你的服务器已经过载的情况下,这个办法才会有用。如果服务器并未过载,就完全没有效果,并且还会增加你的开支。
第二种方式有时会有效,毕竟点对点的传输对网络环境来说非常重要。这也是为什么类似拳头公司这样的公司会有如此可扩展性的点对点网络。他们一直在试图降低他们的玩家所遇到的游戏延迟问题。但这种方式的问题在于它会受限。最大的问题来自于光速。光纤已经是目前最快的传输方式了。这是严格对等的:从波士顿到纽约的网络肯定要比从波士顿到旧金山要快(译者按:波士顿和纽约都在美国东岸,而旧金山在美国西岸)。所以仅仅提升这方面是不够的。最好的方案是结合方案2和方案3。

减少延迟最佳的解决方案
当面对网络接入可用性问题时,对网工们来说最好的解决方案是添加其他的分发者或者至少增加其他节点来平抑这种糟糕的事情。如果是用 CDN 来分发的话,加入另一个 CDN 来分担符合可能是最有效的方法了。
如果你是用云服务来支持游戏的话,添加独立的区域指向使得云服务始终能处于最佳的状态中运行。
过去,如果有第二个云服务,一般都是作为宕机备份而存在的。这被称为一种“活动-被动”场景。一般来说,工程师们要设计好当问题出现时网络能自动转到被动节点中去。这个场景有如下两个问题:
网络负载并未在第二个云服务上测试过—有可能第二个云服务被高负载突然弄坏;
网络位置和点对点连接可能并没有在第二个云服务上优化过。
因为这些缺点,工程师们现在开始使用“主动-主动”式的策略。这也增加了网络的稳定性。但是是否这样做会牺牲性能呢?答案是并不会。复合云服务能有效降低整个系统的延迟现象,只要它能有效监测到哪个云服务最高效,哪里的玩家最活跃。但是这又兜回之前提到的那个问题了:游戏公司没有大量精力去做这件事。光有灵活性和平衡性是不够的,重要的是能把玩家这一极也引入。
最后,游戏产业大概是最需要垂直商务的地方了。其他产业也可以从这种垂直商务中学到一些经验。


玩家点评 (0人参与,0条评论)
热门评论
全部评论