在接受这次采访任务之前,我并不知道FunPlus(趣加)这家公司的存在,然而在收集采访素材的过程中,却对它产生了很大的兴趣。FunPlus成立于2010年,主要做跨平台的F2P游戏――免费下载,道具收费。虽然其主打游戏Family Farm、Family Farm Seaside、Royal Story和Fantasy Slots在国内并不是很出名,但在欧洲和美国深受很多玩家的喜爱,在Facebook的游戏开发商中排名第6,亚洲第一名,有超过6百万的日活跃用户。
公司的3位创始人都是中国人:首席执行官钟英武(Andy Zhong)早在2007年就已致力于社交应用程序和游戏的研发,曾领导其团队开发出Birthday Cards(2008年,Facebook该应用每月活跃用户数量位居第二)和Zoo World(2009年,Facebook页面该游戏的每月活跃用户数量位居第六)等游戏和应用;首席技术官关毅涛(Yitao Guan)在FunPlus创办前,曾在领先的技术公司Ask.com、yousendit.com及IBM担任软件架构师,有超过15年的工作经验,负责构建在任何地方均可运行且每天可处理3亿多条请求的世界级基础设施;首席运营官陈琦(Qi Chen)也是一名连续创业者,在加入FunPlus之前,曾担任Spil Games亚洲公司首席执行官,并于2006年创建了社交网络360Quan。
FunPlus CEO钟英武(右)和COO陈琦(左)
与国内很多游戏初创公司不同,FunPlus从创业之初就瞄准国际市场,并且立志成为全球Top3的社交和移动游戏提供商。但致力开拓国际市场,不可避免地要解决如何在各个国家部署游戏,保证IT系统的稳定,产品的快速研发和部署,以及及时有效的运营等一系列问题。这些问题是如何解决的呢?COO陈琦透露,FunPlus使用AWS的云服务,将所有的业务和IT系统定位在国际市场,仅由6位运维人员来管理所有服务器,通过脚本、自动化控制IT系统,通过云计算的弹性特性,有效解决游戏运营的高峰和低谷的波动以及游戏的快速部署和上线。到目前为止,在AWS上的服务器已有数千台,采用了一共5个Region的服务器资源,除了美国的GovCloud没有用,其他的都用到了,基本实现了全球化部署,并做到一分钟部署一台服务器。以下是FunPlus CTO关毅涛和COO陈琦的采访实录,给出了详尽的解答。
CSDN:想先请您讲讲最早是怎样了解到AWS的?它最吸引您的地方是什么?
关毅涛:我们是游戏服务公司,但从技术层面上讲,我们是互联网技术公司,强调的是大规模和快速发布,目前正在争取将来能够做到按小时发布,这种思路是从一开始就是贯穿在整个FunPlus里。在2006年AWS刚刚出来的时候,那个时候当然FunPlus还没有成立。只是作为技术人员,我本人对它很关注。我非常关注大规模系统的研发,关注这个方面的各种状态,那时候AWS出了虚拟机技术,Google出了一个App Engine技术,还有传统的一些技术。FunPlus成立之初,我们三种都用。在用AWS时,最早是用数据中心。当时是做一些研发的时候主要是用物理机,没有任何问题,一台就是够了,远程也是没有问题。后来考虑到休闲类游戏的成长模式――一旦用户快速增长要有很快的响应速度,而AWS提供的是一种更接近于机器本身的技术,给我们提供了足够的灵活性和很好的可控性,适合我们这样的大规模应用,因此我们决定选用AWS的服务。
我们有一款游戏,曾经有一段时间每一天增长10万用户,每一天都是增加很多台机器,如果没有AWS的话,其实这一点是很难达到的。从申请到拿到服务器的时间也挺快,帮助我们承受住了用户流量的迅猛增长。平时闲时,我们的服务器数量大概是300台,但在高峰期集群服务器大概就要有1700台左右。整个过程从流量开始到服务器启动、测试,整个流程全部自动化,完全能够实现自动伸展,确保即使在游戏的推广期也能够完全应对。而物理机房就是很难应对这种情况,因为流量在时刻变化,有时还会有很大起伏。AWS的虚拟机技术做到了可以用API控制,这点是AWS帮助很多创业公司走向成功必不可少的一环。
CSDN:AWS已基本在中国落地,FunPlus会怎样考虑在中国的业务?
陈琦:目前重点还是在海外,在中国主要是将应用放在苹果商店上买,没有做任何的推广,因为中国市场相对比较复杂,我们会尝试。
CSDN:目前FunPlus主要使用了AWS的哪些功能模块?
关毅涛:我们用到AWS的S3、ELB、EC2、RDS、Redshift、DynamoDB等。我们游戏的基本架构都建在亚马逊上。
CSDN:现在有没有在考察或测试的哪项AWS服务,但还没有正式放在生产环境中?
关毅涛:有的。目前正在考察Amazon Virtual Private Cloud (Amazon VPC) 技术,它在安全性和在网络传输有效性上有很大提高。我们未来会将VPC技术变成内网跟外网结合的技术,安全性会得到很大的提升。AWS会冲在前面帮开发者做一些东西,而我们就是看哪些东西更适合自己。
CSDN:您还会关注其他云计算平台吗?将其与AWS做比较?
关毅涛:作为一家创业公司,一家考虑为用户提供最好体验的互联网公司,我们会时时关注最先进的技术。我和我们的团队三年多来研究和试用了很多云计算技术,到现在为止,我们认为AWS是创新最快的,包括与Google等比较,AWS的创新惯性很大,真的领先于很多做云的厂商。但并不是AWS所有的技术都是最领先的,我们会根据地区选择对于用户服务体验更好的服务,因为我们最终问题是给全球用户提供一种比较好的解决方案。比如在中国,亚马逊并没有完全进入中国,但我们也不能忽略中国市场,因此就要找到最适合我们的平台来帮我们完成,给用户提供最好的体验。
CSDN:经过长期观察比较,您能总结一下看中AWS的原因吗?除了前面说的创新和成本,还有没有其他重要的点?
关毅涛:AWS的机器管理是编程式管理,当把运维和编程开发结合起来之后,其灵活性和可扩展性的想象空间是很大的,这也是我们为什么能在一个小时之内服务器集群从10台扩展到1000台,这是在传统运维中想象不到的,而只有AWS才能提供这种高扩展性和高可靠性。对于我们这种服务全球用户的公司,要达到全球各个点的高可用,现在也只有亚马逊可以做到最好。
CSDN:您刚说的可扩展性很好理解,可靠性是怎么去衡量的?
关毅涛:我们研究各种云计算技术时,AWS的可靠性很高。比如,磁盘技术,不用从开发层面考虑,因为在系统层面有虚拟机技术,在一块磁盘坏时,我们换另外一块磁盘,数据就可以保证不丢失,而且整个过程使用命令行来控制非常迅速。再如,使用AWS的Redshift数据库和DynamoDB数据库,你都不需要关心数据库是分布在多少台物理机还是虚拟机上。不管所放入的数据有多大,都能够保证几毫秒到几百毫秒的响应速度。这就能够让我们的游戏开发人员专注于自己所擅长的工作,而不用考虑数据大了以后这个数据库会越来越慢的问题。总之,AWS帮我们实现了很多东西,让我们有精力去做更多有意义的事情。
陈琦:我举个例子。由于AWS还没有真正进入中国市场,虽然已经宣布了,但离具体实施还有一段时间,我们在中国市场做了一些实践,跟本地的一些IDC有合作。我们的中国版本虽然没有大力推,但也有差不多快10万的日活跃。每次我们发布的时候都是会遇到瓶颈――发布之后用户很活跃,IDC流量就上来了,我们的服务器就会不够,因为我们没法预料到会增加多少用户。这就会导致Web服务器瘫痪。AWS能帮助我们很快地加服务器,可以自动调整平衡,但国内机房需要提前1-2天打电话、写申请说需要加几台服务器。这个过程非常机械、不高效,也不够精确。