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用于网站监测,GitHub和Travis CI用于开发。 Jesper提到Wooga正在考虑在明年开源他们的后台服务。 |