返回 登录
1

下一个可扩展性障碍:大型多玩家手机AR

原文:The Next Scalability Hurdle: Massively Multiplayer Mobile AR
作者:Todd Hoff
翻译:黑色巧克力

译者注:Pokémon Go曾让全世界的死宅倾巢出动,但其服务器的承载却是一个挑战,下面具体来看看。


image

很久以前,构建超级可扩展的系统:Blade Runner在ambient cloud中引入了自主计算,然而我们仍然面临着扩展的挑战,因为还未开始,所以不知道如何在全球进行扩展。

不过,这都是7年前的事了。现在Facebook拥有20亿月活跃用户,没有理由认为它们不能再增加3.5倍,达到地球上的人类的总数。WhatsApp拥有10亿日活跃用户,而YouTube15亿月活跃用户

所以我们应该知道如何为全球提供服务,至少少数几家拥有庞大资源的公司知道如何做到这一点。然而我们的开发者规模却还未能达到为整个地球提供服务。

还有一个领域我们也面临着规模扩展的挑战:大型多玩家手机AR(增强现实)。虽然AR契合对未来的想象,但现在看来,未来可能只是在虚拟的角落。

苹果引入了ARKit,这对开发者来说可能是一种打击,因为未来将要提前到来。还记得iPhone刚被引入的时候,数据量增加是如何融化AT&Ts网络的吗?

Pokémon Go最近进行了一次演示,展示了大型多玩家手机AR会给基础设施带来多大的压力。相关的报道iMore上已经有了,比如:Pokemon Go:发生了什么,为什么会这样Pokemon Go的失败表明Niantic需要深入思考Pokemon Go聚集芝加哥:有趣,失败?还是传奇?最新消息:AT&T的iPhone问题是由于网络配置错误吗?

Pokémon Go因其用户规模导致的服务器问题而为人所知,但这是意料之中的事情,难道不应该处理得更好吗?毫无疑问,在一个小的“杀人区”(如公园)中,让2万名玩家聚集在一起,这本身是一个挑战。他们是否应该把电池带在轮子上,使用高密度的WiFi,或者用微波连接来提高回传呢?听起来还蛮可靠的,然而电磁波谱是一种可怕的浪费。

但那个周二,也就是Pokemon Go玩家相聚时发生了什么?当每个人都在使用手机AR时?每个商店的每一个产品,每一个建筑,每一个标志,所有的东西都会有某种数据驱动的叠加。在没有机会建立特殊基础设施的情况下,必须改进已有基础设施来处理新负载。希望未来的5G能帮助解决这个问题。

除了频谱,计算资源也是一个问题。Pokémon Go并不是一个数据特别密集的游戏,用户之间没有大量的交互,也不需要与后端服务器持续通信。但试想一下,如果存在多个所有操作都需要时刻连接网络的游戏将会怎样?

Pokémon Go算是边缘计算的典范。整个分片可以由一个便携式的现场数据中心来处理,该中心拥有自己的本地通信基础设施。现场数据中心将低延迟计算与足够的规模结合起来处理负载。如此一来,阻止玩家连接游戏的惊群问题(所谓”惊群”形象地说就是一群野兽被惊动了,发出雷鸣般的骚动)将会消失。游戏玩家可以迅速连接到当地的游戏服务器,几乎不会遇到什么麻烦便能开始游戏。

也许在将来会出现数据中心切换协议,就像今天的蜂窝网络切换协议一样。如果真的出现了,那么空中的大调度器会协调所有AR移动部件,甚至可能会考虑将类似智能手机这样的分布式计算资源,作为计算结构的一部分。

评论