每秒百万次访问,每天10TB数据,AR游戏《精灵宝可梦Go》的背后

每秒百万次访问,每天10TB数据,AR游戏《精灵宝可梦Go》的背后

据Statista统计数据,截止今年1月,风靡全球的LBS AR游戏精灵宝可梦Go》仅在iPhone端,日活用户就有大约82.7万人。而在一些活动期间,该作的同时在线人数甚至可达数百万级,自上线以来持续吸引了大批忠实玩家

与吃鸡等MMORPG游戏不同,《精灵宝可梦Go》不仅需要解决同时多人在线的问题,还需要确保基于线下场景的实时AR内容能在多台设备上同步。考虑到该作在全球的大规模覆盖率,大量的LBS AR数据为游戏背后的技术带来很大挑战。那么,《精灵宝可梦Go》的服务器是如何同时承载数百万用户的呢?

据青亭网了解,《精灵宝可梦Go》基于谷歌云服务,因此数据的处理、传输、渲染等流程在云端平台完成,保证稳定性的同时,也允许LBS AR应用场景足够灵活。

近期,为了了解这款游戏背后的技术,谷歌采访到Niantic高级工程经理James Prompanya,在采访中James为我们详细讲述了游戏后台是如何使用Google Cloud工具来支持大量用户流量,包括管理和维护大规模用户端所采用的系统架构,以及其背后发生的故事等等。

Pormpanya表示:在“社区日”和“精灵宝可梦Go Fest 2021”等活动期间,游戏的流量从40万人/秒上升至近100万人/秒。为了承载不断增加的同时在线玩家,Niantic采用了GKE(谷歌容器引擎)、谷歌全球分布式资料托管服务/资料库Cloud Spanner等技术,而且在线上获得了谷歌工程师的技术支持。

注:GKE是谷歌旗下的一个Kubernetes管理平台,主要在谷歌云平台上运行。而Kubernetes最初由谷歌工程师开发,后来在2014年开源,它是一种容器编排平台,用于调度、自动部署、管理和扩展容器化应用。谷歌Spanner是一个分布式数据库,专为游戏状态储存而设计,可支撑全球规模的多人游戏。

谷歌:请介绍一下《精灵宝可梦Go》?

James:这是一款鼓励玩家去户外活动的LBS AR游戏,与传统的手游有很大区别,除了在游戏中互动外,玩家还可以通过线下的社区活动来社交。在相同的地理位置,多名玩家可以一起抓同一个宝可梦,体验共享的AR场景。

Niantic会定期举办社区日、GO Fest、限时突袭等活动。通常,活动上线的区域会同时涌入大量玩家,访问量从每秒40万次上升至每秒100万次。

谷歌:在GO Fest期间,游戏开发团队如何扩展后端规模,以处理流量高峰?

James:我们采用多种托管服务来处理增加的计算流量,主要包括GKE和谷歌Cloud Spanner。《精灵宝可梦Go》的前端服务托管在GKE上,GKE基于谷歌云服务(Google Cloud),管理/扩展节点足够简单。

此外,谷歌工程团队还会在线上为Niantic提供帮助,共同监控和解决《精灵宝可梦Go》在大规模活动期间可能产生的问题。

实际上,在任何时间《精灵宝可梦Go》都有可能涌入大量用户,甚至需要约5000个Spanner节点来处理。除此之外,我们还采用了数千个专门运行《精灵宝可梦Go》的Kubernetes节点。同时,还使用额外的GKE节点来支持游戏的微服务,提升体验感。

这些节点同时运行,可支持全球数百万在线玩家,让他们实时共享同样的LBS AR游戏内容。

谷歌:《精灵宝可梦Go》从一开始就在使用Spanner服务吗?还是在广受用户欢迎后,才开始在游戏架构中加入Spanner服务?

James:最初,《精灵宝可梦Go》的数据托管在Google Cloud Datastore(谷歌云数据仓库)中,这项云服务的优势在于简单易入门,不需要开发者去管理额外的架构。

随着玩家规模逐渐增长,我们希望进一步控制游戏数据库的大小和规模,于是便采用谷歌Cloud Spanner服务。同时,我们也很喜欢Spanner提供的连贯索引功能,它让运行更加复杂的数据库模式变得足够方便。

谷歌:加入我是一名游戏玩家,正在玩《精灵宝可梦Go》。当我打开该应用,开始捕捉宝可梦,这一过程中背后都发生了什么?

James:当玩家捕捉到一只宝可梦,游戏服务器会通过Cloud Load Balancing(全分布式负载平衡解决方案,用于避免拥塞、降低延迟、提升安全性、降低成本)收到相关请求。

此外,《精灵宝可梦Go》首次启动后,储存在Cloud Storage中的全部静态媒体都会载入到玩家手机中。而且,Cloud Load Balancing方案还启动了云内容分发网络(CDN),用于缓存和运行游戏内容。

当玩家手机的访问流量到达Global Load Balancer后,系统会向NGINX(高性能HTTP和反向代理web服务器)反向代理发送请求。接着,反向代理将流量发送到游戏服务器的前端。

Kubernetes还有一个重要部分是空间查询后端(Spatial Query Backend),这项服务会保存基于共享空间的缓存,并用这些缓存来计算地图上显示哪些宝可梦、道馆和补给站(PokeStops)、玩家的时区等任何基于地理位置的内容。

简单来讲,大概是前端负责管理玩家,以及玩家和游戏之间的交互,而空间查询后端则负责地图。同时,前端从空间查询后端获取信息,并发送给用户。

谷歌:那在抓宝可梦时又发生了什么?

James:玩家抓住宝可梦后,系统会通过API从GKE前端向Spanner发送事件。当你更新道馆和补给站地图时,系统请求会发送更新的缓存,并转发至空间查询后端。

Spanner中储存的数据是连贯的,因此在收到缓存更新后,内存中的空间数据也会更新,用于处理之后前端发送的请求。然后,前端再次从空间查询后端获取信息,发送回用户。

谷歌:那么,如何确保统一地理位置的玩家,能够看到相同的宝可梦数据,并保持相对同步呢?尤其是在活动期间。

James:《精灵宝可梦Go》服务器中的一切数据都是确定的,因此,多个客户端在同一个物理位置可以查看到相同的数据,即使这些玩家使用不同型号的手机。而在在线人数多的活动期间,游戏将处理大量缓存和时间同步,所以全部服务器需要同步更新设置变化和事件发生时间,为多名玩家提供共享AR的体验。

谷歌:玩家在玩《精灵宝可梦Go》时,服务器一定产生了大量数据,那么Niantic的数据分析流程是怎样的,都分析哪些数据?

James:是的,这款游戏每天可生成5-10TB数据,我们会将这些数据储存在BigQuery和BigTable中。

团队中的数据科学团队会关注游戏中的事件数据,用于分析玩家行为,以及验证宝可梦地图布局的效果符合预期,或用于市场报告等等。

除了BigQuery外,我们还会使用Dataflow作为数据处理引擎,批量处理储存在Bigtable中的玩家日志。

同时,还会处理一些串流数据,包括检测作弊、寻找和相应不正常玩家信号。

为了获取全球地理位置和生态信息(用于在地图上设置补给站和道馆),我们从OpenStreetMap、美国地质调查局、Niantic Wayfarer地理数据众包平台等数据库中获取信息,未来还将构建一个实时动态更新的全球地图。

谷歌:未来,《精灵宝可梦Go》的活动规模可能会继续扩大,如果流量高达数百万用户/秒,那么系统服务器将如何扩展?

James:随着活动规模扩大,系统中数据管道(pub sub、BigQuery Streaming等等)的负载也将增加,我们需要做的就是确保留出预期的配额。参考:Google

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
(0)
用户投稿
上一篇 2022年6月30日
下一篇 2022年6月30日

相关推荐

  • 第一次用运动手表?Amazfit T-Rex2首次体验

    好几年前,我就想买一块户外表,虽然我不运动,但不影响我想要运动表的想法,不过当时运动表的价格估计能占我一个月的大半工资,一直没敢买,并且当时的APP体验我记得也不是很好,不过最近一…

    2022年7月17日
  • 坦克

    #懂车玩家超级创作日(十一期)# 开售 坦克300 到底多钱呢。。这个问题也很让我头疼

    2022年7月10日
  • 真机图曝光,ROG游戏手机6外观引热议,设计细节暗示配置升级?

    确定将于7月5日正式发布的ROG游戏手机6,又迎来了新的曝光信息。近日,在获得工信部认证之后,其真机“证件照”产品图也随之曝光,这也引起了原本便对这款机型有着期待的消费者们的关注。…

    2022年6月26日
  • 分享4种服装网络推广的方案(服装网站推广的方案有哪些)

    据统计,互联网销售行业中,占有额较大的就是服装行业,正因如此,服装网站制作的热潮愈演愈烈,在这么多服装网站中,想要你的网站获得好的营业额,当然少不了网站推广,而推广也是相当考验功夫…

    2022年11月4日
  • 借呗显示额度已用完是什么意思 怎么才能再借?

    在如今,借呗的使用和额度有关,一般来说,想借多少钱,那么就需要有多少额度,很多人对此的认识不多,那么借呗显示额度已用完是什么意思?借呗额度用完怎么才能再借?下文就来带大家了解一下。…

    2022年10月15日
  • “吃鸡”早期的军需有多良心?两位数皮肤比比皆是,妙不可言

    前言:最初的和平精英并不是一款超氪的吃鸡手游,从两周年庆典开始吃相才变得越来越难看!其实游戏早期也有一些氪度非常低的军需,有的甚至只需要个位数就可以入手,妙不可言! 众所周知,和平…

    2022年8月2日
  • 供需良性互动催生预制菜市场快速发展

    2020年以来受新冠疫情影响,宅经济的流行,我国的预制菜市场开始火爆。在此背景下,《小康》杂志2022年5月中旬组织的“聚焦预制菜”专题可谓恰逢其时,十几篇文章从不同维度聚焦处于媒…

    2022年9月6日
  • 适合自驾出游的车型推荐 选它准没错

    与繁忙的工作解绑,方向盘在手,星空为幕,帐篷为营,在山野里枕着夏日晚风看落霞漫天……想要顺利出行奔赴广阔的大自然,给力的座驾必不可少。它要有时尚的颜值装点旅途、要有大空间放下全家人…

    2022年8月18日
  • 游戏王决斗链接:魂卡组构筑追忆,国服黑魔导依旧给力-

    对于游戏王决斗链接国服玩家来说,魂卡组永远都是体验这款游戏的初衷,毕竟不少决斗者来到国服主要是为了体验当年在环境中非常流行的构筑以及在动画中让那些传奇决斗者大放异彩的卡组。 在近期…

    2022年6月30日
  • 经典复古传奇:传奇至尊,复古经典

    复古传奇自身是不属这个时代的网络游戏,现在的游戏用户也不会明白为何复古传奇画面质量比较低还会有用户想要因而买帐。2001年复古传奇刚开始首测,那个时期那时候电脑上刚开始营销推广,更…

    2022年8月18日

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息