日活四千万的汤姆猫游戏家族,用AWS云服务打造“无感”用户体验

2020年7月,“会说话的汤姆猫”首款赛车类游戏《汤姆猫飞车》上线公测。它保持了汤姆猫游戏家族一贯的Q萌风格,赛道上一路都有萌宠陪伴,引领玩家进入奇妙的赛车世界。“会说话的汤姆猫”是上市公司金科文化旗下子公司Outfit7开发的一款风靡全球的手机游戏。自推出以来,它很快成为全球知名IP,形成了一个由数十款游戏组成的游戏家族,业务覆盖欧盟、美国、中国、俄罗斯、巴西、印度等全球200多个国家和地区。目前,其App产品矩阵的全球累计下载量超过130亿人次,月活跃用户超过4.1亿,全球日活用户超过4000万,中国日活用户超过1000万。

在庞大用户量的背后,是对于游戏平台伸缩性的巨大挑战。如何在晚上6-8点的流量高峰期保持与流量较低时同样的系统反应速度和游戏体验,真正让用户做到对后台技术和基础设施“无感”,是金科文化在构建游戏平台时首要关注的重点。为了满足这一需求,金科文化将服务平台构建在了AWS云服务之上。通过在AWS上建立一套云原生的系统架构,金科文化能够轻松满足高并发、高效率、高可用、低成本的运营需求,不管流量多大,用户体验感受一致,不受影响。

此外,为了服务遍布全球的用户,金科文化在全球建立了同样架构的两个游戏服务平台:国内用户平台使用西云数据运营的AWS中国(宁夏)区域,海外用户平台使用AWS亚太(新加坡)区域,为世界各地的用户提供更加顺畅、更低延迟的服务。

云原生架构支撑千万级日活的“无感”体验

由于汤姆猫家族游戏的日活用户达到千万级,由此产生的日广告点击量更是高达百亿级,金科文化需要设计一个高并发的系统架构,以便顺畅地处理前端大量用户的访问请求,并在后台进行大数据量的实时处理和分析。当一个用户进入/退出游戏、点击广告、做出支付购买行为时,用户平台要能够迅速提取出该用户的基本信息、状态信息,同时实时更新用户的状态信息。

为了充分利用云的好处,金科文化采用了云原生的架构。云原生是当前一种重要的IT理念。所谓云原生,就是相对于传统的应用开发方式,以应用在云上运行为前提,在应用的开发运维中充分利用云的特性和优势,实现应用的敏捷性、弹性伸缩、高可用性、高效率、降低总拥有成本等好处。云原生架构开发中通常采用的技术包括开发运维一体化(DevOps)、微服务(MicroServices)、敏捷基础设施(Agile Infrastructure)等。

通过采用Amazon Elastic Compute Cloud(Amazon EC2)弹性计算服务、Amazon EC2 Auto Scaling弹性伸缩服务、Application Load Balancer(ALB)负载均衡服务和Amazon DynamoDB键/值和文档数据库服务,金科文化的游戏平台实现了7倍的自动伸缩和负载均衡。云原生架构帮助金科文化在保证系统开发、运维、交付效率的同时,实现了自动扩容、自动运维等来保证系统弹性,从而为其打造“无感”用户体验打下了扎实的基础。

云应用的下一步延申:大数据分析

汤姆猫游戏家族成功的背后,除了通过云原生架构实现的“无感”用户体验,还来源于通过大数据分析不断改善应用开发和运营,持续提高用户体验。用户分析系统是金科文化在AWS云上的另一个重要应用,通过分析用户留存、使用时长等数据,为游戏开发和运营提供决策依据。

金科文化巨大的用户量背后,每天需要处理的数据量在压缩后依然高达百GB 级别,导致传统数据库无法承担,更无法支撑实时数据分析。金科文化的用户分析系统使用了Amazon Kinesis Data Streams接入数据流,通过Amazon Kinesis Data Analytics进行实时数据分析,并将离线数据接入Amazon Simple Storage Service (Amazon S3) 云存储服务进行数据的抽取、转换和加载(Extract-Transform-Load,简称ETL)处理。金科文化还使用Amazon Redshift托管式数据仓库替代了原有架构中开源的解决方案Apache Kylin,将部署和运维开支成本降低了70%多。 游戏行业对云服务的应用由来已久,而云原生的概念也被广泛验证和推崇。在实际应用中,通过广泛而深入的云服务提高应用弹性和敏捷性,最大限度发挥云原生的价值,将帮助游戏企业提升运营效率、降低运营成本,适应用户需求快速创新,从而为企业发展带来巨大的价值。金科文化在AWS的应用,为业界同行树立了一个成功的典范。