墨迹风云(北京)软件科技发展有限公司成立于2009年,一直致力于开发其核心产品——墨迹天气(MoWeather),这是一款查询天气信息的 App,它提供了专业、稳定的天气查询服务,让人们能够知晓天气变化,提前做好出行计划。2012年,墨迹风云在墨迹天气里增添了“时景”功能,让用户能以全新的方式来交流天气、分享拍照带来的乐趣,打破了用户对天气只能是数字的禁锢。截止到目前,墨迹天气已拥有超过4亿用户,日活跃用户超过 5000 万。据 App Annie 4月提供的数据统计,对比其它天气类App,墨迹天气在 App Store 的下载量稳居全球第一。
墨迹风云通过其核心产品--墨迹天气为遍布全球的用户提供实时的天气查询服务,同时还通过“时景照片”功能,让用户分享实时天气状况,为用户提供了一个有趣的社交平台。利用亚马逊云科技的云服务,墨迹风云可以根据用户分布情况,快速部署海外节点,使身处世界各地的海外用户不仅能查询全球30多万个城市的天气信息,同时还能分享当地的实时天气状况,极大地提升了海外客户的用户体验。
墨迹风云在其快速发展过程中,遇到了两个重大的挑战:其一是如何让身处世界各地的用户都能快速查询天气信息并及时收到灾害天气预报等重要信息; 其二是随着墨迹天气用户的快速增加,如何快速、有效地分析每时每刻产生的大量用户日志数据,以不断改进产品,给用户提供更好的体验。
“墨迹天气”是一款提供天气信息查询的移动应用程序,其主要功能包括实时的天气信息查询、照片时景分享、穿衣打扮等。从发展初期,墨迹天气的运营就采用了分布式方式,在北京、上海、广州等地建立了运营节点,使得用户可以自动访问最近的节点,快速获取信息和分享照片。随着中国经济的发展,出国工作和旅游的人也越来越多,墨迹天气也随之开启了自己的国际化进程,增添了全球城市的实时天气信息,但如何让身处海外不同地域的用户能快速获取这些实时天气信息成为墨迹风云面临的一个难题。
“起初,我们并没有设立海外运行节点,海外用户需要的所有更新都必须通过访问国内的中心节点完成,但由于跨国、跨地区间网络速度不稳定,导致有时候信息更新的速度很慢,一次查询有可能需要20秒甚至更长的时间,这对移动端用户来说是不可接受的。”墨迹风云运维经理章汉龙先生说。解决这一问题的最佳方案是建立海外运营节点,把需要频繁访问的信息存储在距用户最近的节点上,既便于用户快速访问也便于系统实时推送重要信息给用户。“我们是一家初创公司,去不同国家的数据中心托管服务器,以此建立海外运营节点对我们来说成本过高,也很难维护。”章汉龙说,“采用成熟的云服务商的产品,建立能覆盖全球的运营节点,是应对这一挑战的最佳方案。”
墨迹风云面临的另一个难题是如何高效率地完成大数据分析。在国内市场上,依托“墨迹天气”每日5000多万的活跃用户群体,为企业客户提供广告服务是墨迹风云的一项重要业务,但衡量广告的效果需要及时完成对海量数据的分析;另一方面,要不断改进“墨迹天气”,给用户提供更好的体验也需要分析用户数据,及时了解用户的使用行为,才能提供更加符合用户使用习惯的特性。“在采用Amazon EMR之前,我们没有专职的大数据分析人员,很多数据分析需要临时抽调开发人员编写程序来完成,几乎无法对大量的数据进行实时、准确而高效的分析。”章汉龙说。
为了给海外用户提供更好的用户体验,墨迹风云从 2014 年开始,选择采用 Amazon EC2 和 Amazon CloudFront 构建墨迹天气的海外发布和推送平台。“在测试过程中,我们发现亚马逊云科技云平台的搭建、配置及部署非常简单,CDN 部署甚至比国内的服务商还要方便,不需要人工干预,不到 1 小时即可完成配置并立即上线运行,体验令人印象深刻。而国内厂商通常需要 1 天及以上的时间才能完成。” 墨迹风云运维经理章汉龙说。
实际上,亚马逊云科技云服务的稳定性、可用性、灵活性、方便性以及全球化的覆盖是墨迹风云选择亚马逊云科技的主要原因。章汉龙坦言,墨迹风云海外运营平台最初采用了另一家著名云服务商的产品,但效果不理想,主要问题是云平台的支持不够好,几乎每个月都会因为云平台的硬件维护原因而必须重新启动虚拟机。“这对于我们的核心应用来说是不可接受的,因此我们决定放弃原来的云平台,转而采用亚马逊云科技的云平台。” 章汉龙说。
与自己在各地数据中心托管服务器的方式相比,采用亚马逊云科技云服务带来的方便性和灵活性是无可比拟的。“墨迹天气” 是一款国际化的产品,需要为遍布全球的用户提供服务。“我们目前已经使用了亚马逊云科技在美国、日本、新加坡和欧洲四个区域的云服务,这使得墨迹天气可以为全球范围的用户提供天气查询服务,并且可以根据不同区域用户量的变化情况,随时增添或减少运营节点,每个海外运营节点的部署都非常方便、快速。当需要进行节点迁移时,你只需做好节点镜像,然后指定迁移位置,亚马逊云科技内部的云服务就会自动完成镜像的迁移,无需人工干预。” 章汉龙说。
在大数据分析方面,Amazon EMR 则是墨迹风云不二的选择,因为还没有其他的云平台能提供如此方便、高效、灵活的大数据分析能力。Amazon EMR 是一种 Web 服务,它简化了大数据处理,极大地提升了数据分析人员掌控海量数据的能力。Amazon EMR 是一种托管的 Hadoop 框架服务,运行在 Amazon EC2 和 Amazon S3 基础架构之上,可以即时灵活地配置自身所需容量的大小,执行数据密集型计算,完成 Web 索引、数据挖掘、日志分析等工作,它使用户专注于数据分析,无需担心费时的 Hadoop 集群设置、管理或调整,也无需担心所需要的计算能力是否足够。Amazon EMR 的采用使得墨迹风云对 “墨迹天气” 收集到的用户数据分析进入到实时阶段,可以随时对所有数据进行分析并获得所需结果,这在使用 Amazon EMR 之前是无法实现的。
亚马逊云科技的云服务对墨迹风云的业务发展起到了重要的推动作用,首先获益的是墨迹天气的海外用户。
目前,墨迹风云在亚马逊云科技美国、日本、新加坡和法兰克福 4 个区域配置了 Amazon EC2 和 Amazon CloudFront,构成覆盖全球的海外信息发布和推送节点,每个节点配置了 4 个 Amazon EC2 实例,每个实例配备 8 个 CPU。海外用户需要的天气信息和时景照片都通过这些海外节点发布和推送,极大地节省了成本和带宽。过去没有采用亚马逊云科技的服务时,海外节点的一次天气查询可能需要 20 秒,采用亚马逊云科技之后,同样的查询仅需要 1-2 秒,速度提升非常多,极大地提升了海外用户的用户体验。在亚马逊云科技上部署海外运营节点带来的另一个好处是方便灵活、稳定性好、无需维护。“如果在某一地区的用户数突然激增,我们可以快速地部署一个新的节点,所有海外节点的部署和维护都非常容易,无需专人负责。” 章汉龙说。
Amazon EMR 的使用大幅度地提高了墨迹风云的数据分析能力。在使用 Amazon EMR 之前,墨迹风云进行数据分析都是靠开发人员自己写程序来完成,最大的问题是效率低,也不能做到实时分析,只能分析前一天的数据,无法分析前一小时的数据。“有了 Amazon EMR,我们建立了专门的数据分析团队,大幅度提高了数据分析的实时性、准确性,极大地提高了我们数据分析的效率。现在,我们为企业客户做一次活动,可以在活动一结束就分析出活动的实际效果。” 章汉龙说。亚马逊云科技还为 Amazon EMR 提供了一个很好的选择,用户可以把数据都存放在 Amazon S3 上,需要进行分析时才打开 Amazon EMR 实例,分析结束后立即关闭 Amazon EMR 实例,从而极大地节省数据分析的成本。
此外,亚马逊云科技云服务的安全性和高可用性也增强了墨迹天气海外运营系统的安全性和可用性。“我们使用亚马逊云科技云服务之后,整个海外运营系统的安全性和可用性超过 99.99%,到目前为止,没有出现过任何问题。” 章汉龙说。
在未来,随着 “墨迹天气” 国内外用户数量的增加,墨迹风云将考虑采用更多的亚马逊云科技云服务。
了解 亚马逊云科技 如何帮助满足您 Web 应用程序需求的更多信息,请访问我们的 Web、移动和社交应用程序详细信息页面:http://aws.amazon.com/web-mobile-social/。