关于 Ingress 服务器——过去和未来
Posted on
大家吼,[我系渣渣辉(大雾。。]。我是 @ofer2。
作为 Ingress 一个 LA 的工程师,[怎么就。。(大雾。。]。
为了让我们现在的这个玩家社群环境更加的透明和公开,我想起最近服务器经常发生的故障和维护,给大家讲一下这个 Ingress 的个人奋斗,还有这个历史的行程。[请瞪大 XX,供各位 Agent参考。。(大雾。。]]
首先,我要稍微重温一下历史。Ingress 是 Google 内部孵化出的项目。我们最初的目标是要回答一个问题:“如果 Google 地球是个电子游戏会怎样?”。游戏吸纳了社群内部的闪光点子,比如“游戏邀请体系”以及“从历史遗迹数据库 (HMdb.org)导入初始 Portal”。随后,这个游戏开始成长。游戏一开始就基于 Google 的网络架构,也就是以下所谓“旧服务器”。
之后,Niantic 作为独立的创业公司从 Google 剥离出来。随着 Niantic 的成长,我们吸取 Ingress 的开发经验,开发出了新的游戏架构,推出了我们第二款游戏——Pokemon Go。这套全新的游戏架构能够承载更多的玩家数量,性能表现更好,而且费用低廉。与此同时,Ingress 仍然在使用旧服务器。
在 Pokemon Go 成功推出后不久,Ingress 开发团队就面临着重构游戏客户端的任务。原因是 Ingress 原有的核心架构已经过时,不再有技术支持和更新。和旧服务器一样,原本的客户端的设计使得后期的持续开发变得十分困难,代价高昂。在后端开发上,我们也决定迁移到新的服务器上,并且提供 Ingress 的特有功能,比如 Link、Field。[译者按:N 社目前出了三款游戏,虽然都有基于实际位置的 Portal 作为支撑,但是只有 Ingress 有 Link 和 Field 的概念]。不幸的是,虽然面临 iOS 平台上可能失去技术支持的压力,整个客户端和服务器的迁移过程比预想中耗时更长。
在 Ingress Prime 发布之后,整个团队开始着力修复 Bug 以及进行服务器升级。然而,新的服务器要达到预期还有大概一年的时间。这让我们面临了一个很难的问题:是不是应该冒着让玩家失望、推迟游戏玩法更新的风险,继续迁移到新的游戏服务器上?
最终我们决定把玩家放在首位,先进行游戏新玩法的开发完善。这也意味着我们会尽力在旧服务器上节约开支,而不是迁移到新的服务器上。这个决定代价不菲,举例来说,Ingress 无法像其他游戏一样,直接使用新服务器上自动构建好的功能模块,必须手工添加。
为了节约旧服务器的开支,我们把服务器迁移到了费用更为低廉的地区。[编者又按:迁到我们 China 可好?据统计,65% 的比特币算力来自 China 哦~ 云上贵州考虑一下?]更换环境这个事就像是在玩“大家来找茬”,我们修复了所有已知的 bug,但是由于整个体系太过庞大,改动又很细微,有的改动不痛不痒而一些却又举足轻重。这些都导致了各种 Bug,各种测试,甚至像 Intel 一样不得不回滚一些功能。[编者再按:回滚就是开倒车,恢复到之前的版本,因为可能新版本这个车开不动了。。需要重新来过]。Intel 一开始被部署到新环境后,团队发现其中很重要的一部分需要补上,这导致了延迟。我们确信很快能修补上这一部分,但是仍然需要解决一些遗留下的问题。
这些迁移代码已经写完,目前团队正在致力于在更加便宜的服务器上重新部署游戏服务端,同时监控其对游戏客户端的影响。我们仍然需要测试,修复 Bug,之后才是发布。我们会在周二开始进行下一轮的测试。一旦测试完成,我们会转头测试 Intel 以及客户端。这些都完成,迁移到了更便宜的服务器上后,我们才能着手开发更多能让 Ingress 更具活力的新功能。新功能已经在计划中,完善后将会公布,希望大家能够喜欢。
希望这样能够阐明我们团队的决策历程,同时清晰的展现我们正在如何积极的塑造 Ingress 的未来。
编者最后按:
本文原发布在 Ingress Community,作者是 Ingress 开发工程师 @ofer2。
https://community.ingress.com/en/discussion/9267/about-the-ingress-server-history-and-plans
这篇稿子证实了之前的一些坊间传闻,也交代了一些进度。
作为半官方的员工出来喊话,也算有些诚意了,所以草草翻译了一下给大家。
水平有限,请多包涵。
欢迎关注我们的同步渠道
Telegram - https://t.me/IngressBeijing
Twitter - @ingressbeijing
网站 - https://bjres.net
投稿请发邮件至 tougao@bjres.net
请务必投稿后联系 @AlexRowe 确认稿件到达
Telegram - @alexrowe
QQ - 350259971