日入240万美元背后的秘密 Supercell如何用AWS云服务?

Clash_of_clans_2

在过去的一年里,由6位游戏开发者创建的芬兰社交游戏公司Supercell增速惊人,凭借着社交农场游戏“Hay Day”以及大名鼎鼎的社交战略游戏“Clash of Clans”,这家公司目前的游戏用户数量已经超过850万,其日收益更是超过了240万美元。除了游戏素质精良,游戏策略引人入胜外,Supercell的成功也离不开其稳定的游戏环境。实际上,他们选择的是利用亚马逊的AWS平台。最近,他们接受采访,分享了自己使用AWS的经验:

不同于现在超过100人的规模,Supercell在建立初期是一只小型团队,并且在开发Clash of Clans初期他们选择了专注于iPad平台。这两点保证了他们能够将工作重心全部放在设计优良的游戏体验上。当然,麻雀虽小,五脏俱全,这支6人团队在游戏策划、美术、前/后端开发这些角色上也有明确的分工,并且有一位出色的领导者。

Sami Ylihar就是这个团队中负责后端的工程师,Supercell需要数百台服务器去支持游戏运行, Supercell还需要为每个玩家提供会话系统。随着玩家数量的增长,服务器的数量也要增加。除此以外,为了运营好一款游戏,服务器得长时间的工作耗费大量的电能,并且还要监视和反馈每个用户的行为,以防止作弊行为出现。因为作弊往往会让游戏内的生态体系完全失衡,可玩性下降。Sami Ylihar说:“搭建数百台服务器需要占用很大的场地,需要定期地进行维护,这都是巨大的挑战。同时我们也很难预测服务器会发生什么问题并做好容灾措施。”所以他们希望用云服务来解决这一问题。

对于这支以做精品化的游戏为目标的小团队而言,他们在选用云服务时不仅要求它易用性强、性能强大且稳定可靠,同时还需要这个云服务有高扩展性,能适应游戏用户的高速增长。Sami Ylihar说,“性能、稳定性和弹性是我们选择云计算服务的基本要素”,在这种情况下,他们选择了亚马逊的AWS。

“我们用AWS的API去管理服务器和基础架构”,Sami Ylihar说到,“这是AWS对我们而言最重要的一点,例如,AWS API能让我们很方便地管理与启动服务器。并且可以模拟不同的过载状况和运行环境来帮助我们决定选择购买多大的负载能力。”

AWS也能帮助Supercell储存大量的数据,根据Sami Ylihar的描述,他们每天需要处理万亿字节的数据,有4TB的游戏日志被存储在Amazon S3上,这些日志将会被用来改善游戏体验,而S3能够提供长期稳定的存储和备份。

除了S3外,他们还用到了亚马逊的弹性存储方案Amazon EBS。Amazon EBS是专门为Amazon EC2 虚拟机设计的弹性块存储服务,为Amazon EC2的虚拟机创建卷,类似于没有格式化的外部卷设备,你可以创建多个卷,在卷上驻留自己的文件系统,或者直接作为卷设备使用。所以它能让Supercell更方便地管理,同时预分配的IOPS可以让数据很快地被存入云端。

“基于我们需要不断地分析数据,我们希望Hadoop和其关联的服务器能够7×24小时的工作,而不是让我们去启动它们。”这样我们就能不断地监控游戏中的状况了。AWS也很好地实现了这一点。

此外,Supercell还使用了AWS的企业支持服务,这样当他们遇到问题时,能够在第一时间获得相应的解决方案。