AWS 案例研究:Uplive

2020

“Amazon Aurora 强大的功能特性全面支持 Uplive 核心业务模块,可将 MySQL 和 PostgreSQL 数据库性能提升 3-5 倍,在某些细分场景下,甚至可提升多达 10 倍。借助 Aurora 全球数据库功能,我们可以快速构建跨区域的灾备方案,最大限度地保障业务连续性。”

——Asia Innovations Group 联合创始人兼首席技术官 刘明灵

Uplive 海外直播平台的核心业务平台基于 AWS 构建,为全球用户提供优秀的产品服务体验。AWS卓越的产品服务和全球基础设施覆盖、易于使用,灵活性和友好性俱佳的托管服务、全方位的技术支持服务助力 Uplive 不断突破自我,创新发展。Uplive 是全球最大的独立视频社交娱乐平台之一,拥有超过 2. 9 亿注册用户。基于 AWS,Uplive 构建了完整的业务框架、通透的数据分析辅助运营决策体系和持续深入的成本优化机制。Uplive 采用的AWS 服务包括 Amazon EC2、Amazon S3、Amazon VPC、Amazon ElastiCache、Amazon DynamoDB、Amazon Aurora、Amazon Redshift、Amazon EMR、Amazon Athena、Amazon MSK、Amazon CloudFront、Amazon CloudWatch、Amazon Route 53、Amazon Global Accelerator、AWS WAF 等。

                 采用的 AWS 产品                                                    为什么使用 AWS?

                  Amazon EC2                                               领先的产品服务支持快速创新

                  Amazon S3                                    高度适配的架构满足业务需求,持续优化成本

                  Amazon VPC                                          强大的企业级技术支持服务保驾护航

                  AWS WAF

                  Amazon DynamoDB

                  Amazon Aurora

                  Amazon Redshift

                  Amazon Athena

                  Amazon EMR

                  Amazon CloudFront

                  Amazon Global Accelerator

关于 Uplive

Uplive隶属于亚洲创新集团 (Asia Innovations Group),是全球最大的独立视频社交娱乐平台之一。截至2021年12月底,Uplive在全球150多个国家和地区拥有超过2.9亿注册用户。Uplive于2016年7月上线,迅速将业务扩展到亚太、中东和北非、北美、拉丁美洲和其他全球枢纽。


Uplive在全球多个城市设立分支机构并在当地运营,拥有强大和成熟的研发及发行团队。在Uplive上,用户可以通过直播的形式展示才艺,分享生活并与全球用户实现实时社交。2019年,Uplive被Twitter评为「最具影响力的国际品牌」之一,是泛娱乐和新经济领域的知名品牌及创新代表。

面临的挑战

Uplive 定位于面向全球用户的视频社交娱乐平台,其产品形态涵盖直播、IM、商城等多个维度。游戏化和社交化的直播、多国语言实时翻译等功能有助于打破时空界线,帮助全球用户减少沟通障碍,这也是 Uplive 产品重要的差异化亮点。

伴随着业务的高速发展,Uplive 面临数据量激增、系统高可用性以及全球范围内灵活扩展等挑战。如何更好地服务全球用户,提供优秀的产品用户体验,这是 Uplive 最核心的业务诉求。从技术角度看,IT 基础设施需要与业务目标相匹配,关键在于要有能力支持全球范围内服务的灵活扩展,最大限度地确保应用系统高可用,保障业务连续性,同时满足出海数据安全合规等要求。

这种情况下,传统解决方案已无法满足 Uplive 快速扩张的业务发展需求,而云计算则为 Uplive 茁壮成长提供了天然的“沃土”,不仅为产品服务提供安全运营的环境,更经济高效地推动迭代创新,从而满足世界任何一个角落的客户功能需求。

为什么选择 AWS?

在Uplive发展过程中,会定期对各主要云服务商进行对比。从业务角度看,Uplive非常看重底层IT基础设施运行的稳定性,即是否能为业务长远发展提供可靠的支撑。

自2016年Uplive APP上线以来,一直使用AWS为其最核心的业务承载平台。在Uplive首席技术官刘明灵看来,选择AWS,主要是出于以下几点关键原因:

首先,产品服务卓越,基础设施覆盖广泛,支持Uplive快速便捷地创新,服务全球范围规模不断增长的用户群。AWS提供的大量托管服务易于使用,灵活性与友好性俱佳,在操作系统、编程语言、Web 应用程序平台等方面,均可为Uplive产品团队提供无缝的对接和支持,帮助研发侧屏蔽底层基础架构的复杂性,更好地将精力集中投入到业务创新之中。同时,相比自建方式,可大幅提升系统整体的可维护性。

其次,伴随Uplive产品更新的各大关键节点,AWS均有针对性地与之匹配了相适应的架构和服务,高效满足业务需求的同时,持续优化成本。比如,产品上线初期即引入 Amazon DynamoDB,用于即时通信(IM)应用的高并发读写场景,与自建 MongoDB 的方式相比,性能至少提升五倍;以  Amazon Redshift 为核心,陆续引入包括Amazon EMRAmazon AthenaAmazon Managed Streaming for Apache Kafka (MSK)  等在内的大数据分析服务,辅助运营决策,为持续优化产品用户体验提供坚实的数据支撑;将核心数据库平台从 Relational Database Service (Amazon RDS)  切换至 Amazon Aurora,并从Amazon Aurora强大的功能特性中持续获益。

“技术选型过程中,我们几乎对市面上主流的数据库都进行了详细的对比测试,Aurora和DynamoDB 非常贴合 Uplive 的实际应用需求,性价比尤其令人满意。”刘明灵表示,“特别在研发侧,基本做到了对底层 IT 基础架构‘无感’,这对于互联网类应用快节奏、高强度的创新至关重要。”

第三,AWS 提供强大的企业级技术支持服务,可帮助 Uplive 第一时间获得技术专家、优秀工程师全天候的技术支持,合理运用相关工具,自主管理IT 环境的运行状况。针对应用程序和相关使用场景,AWS 还提供咨询建议,指导架构优化。同时,AWS 团队的技术客户经理,及时主动协调相关资源,帮助 Uplive 团队与细分技术领域的专家建立联系,有针对性地制定优化计划。

目前,Uplive 海外直播平台核心业务全部基于AWS稳定运行。Uplive 使用的AWS 服务包括 Amazon Elastic Compute Cloud (Amazon EC2)Amazon Simple Storage Service (Amazon S3)Amazon ElastiCacheAmazon Virtual Private Cloud (Amazon VPC)、Amazon DynamoDB、Amazon Aurora、Amazon Redshift、Amazon EMR、Amazon Athena、Amazon MSK、Amazon CloudFrontAmazon CloudWatchAmazon Route 53Amazon Global AcceleratorAWS WAF等。图1 是Uplive基于Amazon Aurora Global Database(全球数据库)的架构示意图。

图1  Uplive 基于 Amazon Aurora Global Database(全球数据库)的架构示意图

获得的收益

基于AWS,Uplive持续开展创新实践,不断为全球用户提供更优秀的产品服务体验。

Uplive 产品上线初期,主要采用包括 Amazon EC2、Amazon CloudFront、AWS WAF 等在内的基础服务,解决全球用户就近安全访问的问题。其中,DynamoDB 帮助 Uplive 在面对突增流量时游刃有余,无需关心数据量扩展规模,并避免传统数据库环境中需要各种切分所带来的的研发和运维资源损耗。在流量瞬间拉起的高并发读场景下,比如异步的IM离线消息,DynamoDB 仍能将延时控制在毫秒级。

此后,Uplive 逐步构建分析数据湖架构,同时采用自动伸缩机制,包括 Spot 实例弹性扩容,进一步优化成本,提升系统运行效率。当前,Uplive 已经依托 AWS 分析数据湖架构建立了一套完整的数据分析决策机制,通过近实时的动态数据报表、全方位可视化数据分析等为营销和运营提供指导,以精细化运营支持用户体验“更上一层楼”。伴随全球用户量激增,产品功能场景不断扩充,Uplive 开始寻求性能更强、运维成本更低、研发支持更友好的核心数据库服务。通过 AWS 团队组织的技术分享,Uplive 充分了解到 Aurora 强大的功能特性,包括计算与存储分离、多副本同步、实例读写分离、性能符合高并发特性等。通过与MySQL、PostgreSQL 等关系型平台详尽的对比测试,Uplive 团队发现,在通用负载场景下,Aurora 至少可将性能提升 3-5 倍,在某些细分场景下,甚至可提升多达10倍。自此,Uplive “小步快跑”,相继将各核心业务模块迁移至Aurora,极大地提升数据和应用的可靠性。

在完成核心业务模块悉数迁移至 Aurora 之后,Uplive 继续引入 Aurora Global Database 跨区域复制/灾备功能,低成本地快速实现业务系统全局高可用,构建多业务中心,最大限度地确保业务连续性。即便在极端情况发生时,也能在短时间内快速重建整个业务系统。

Uplive 基于 AWS 建立了完整的业务框架、通透的数据分析辅助运营决策体系和持续深入的成本优化机制。基于 CloudWatch,产品研发和系统运维人员可以提前看到相关的云资源数据变化,第一时间处理,优化实例选择、部署与预估业务量匹配的资源。通过 Aurora 的 PerformanceInsights 工具,团队可以及时监测数据库性能,定义优化空间,提前预判并合理配置资源,高效、合理地应对潜在的业务突增需求,满足运营期待。

贯穿 Uplive 产品发展的各个阶段,AWS 团队全程参与 Uplive 关键的技术架构重构历程,提供从工具方法到行业最佳实践的全方位信息,帮助 Uplive 事半功倍,决胜全球视频社交娱乐平台之巅。“整体看,业务部门基于 AWS 的开发和创新进展比较顺利,新功能的学习成本并不高。通过 AWS 团队高效、有针对性的分享,Uplive 团队内部也建立了新技术、新应用的学习研究氛围。后续,Uplive 将以 AWS 为主体,进一步探索直播、社交 APP 各 项细分领域的创新路径,比如深入布局容器化应用等方向。”展望未来,刘明灵信心满满。