缺失的移动后台服务

  • Manuel Pais
  • 王振峰

2014 年 7 月 25 日

话题:移动DevOps

Jesper Richter-Reichhelm作为Wooga公司的工程主管,在2014 年的阿姆斯特丹 GOTO 大会上发表了演讲,分享了 Wooga 在寻找适用于其移动游戏的商用后台服务过程中所遭遇的困境。在已有的产品中,同时兼有成本合理可接受,支持与已有工具集成,支持透明地访问数据等特性的,几乎是不存在,所以 Wooga 自主研发了演讲中所涉及的服务。

Jesper 重点关注了三种后台服务:用户数据持久化,AB 测试分析和异常处理,这些服务对于移动应用都是通用的。

对于数据持久化,Wooga 的需求是支持多设备的用户数据和多种环境(CI,测试,生产),而Parse不支持这些需求,虽然Kinvey支持,但是对于四千万的用户基数其成本太高。Wooga 决定基于ETags研发自己的 key-value 存储,配置和授权服务也采用相同的策略。

Omniata对数据分析和 A/B 测试提供了丰富的功能支持,但是无法与 Wooga 已有的工具集成,并且不支持深度访问数据,如哪些用户收到了应用的特殊配置,这都严重阻碍了我们采用该产品。所以,Wooga 从早期就研发了自己的工具,用于分析、仪表板和报表等方面。

在异常处理方面,HockeyApp缺乏异常相关的信息和异常发生的条件。而Crittercism具有更多功能,这不失为一个更好的选择,但是对于百万级用户成本过高。它也有不足之处,如不支持细分(如比较处于 A/B 测试的新版本与老版本相比,崩溃次数是否更多)和规格化(如特定错误影响用户的百分比)。Wooga 自己的实时异常处理工具同时支持以上两点。

随着自主研发通用后台服务数目的增多,Wooga 决定成立一个专门的移动后台服务团队,效仿 Amazon 的做法进行运作(团队提供服务的REST API,游戏开发人员负责分析结果)。Jesper 强调,没有合适的外部选择,这是 Wooga 自主研发与维护这些服务的原因所在。他列举了一些服务作为佐证,其中有New Relic用于网站监测,GitHubTravis CI用于开发。

Jesper 提到 Wooga 正在考虑在明年开源他们的后台服务。

查看原文链接:Missing Backend Services for Mobile


感谢杨赛对本文的审校。

给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至editors@cn.infoq.com。也欢迎大家通过新浪微博(@InfoQ)或者腾讯微博(@InfoQ)关注我们,并与我们的编辑和其他读者朋友交流。

移动DevOps