3月21日飞鹏网消息,为期两天的2016第十二届TFC全球移动游戏大会暨智能娱乐展已于18日圆满落幕。18日下午举行的当HTML5跨越破冰时代论坛上,灵雀云副总裁于历濛做了主题为『快是最重要的因素』的精彩演讲。

请关注飞鹏网 http://www.fpwap.com/


2016TFC Docker如何助力游戏快速开发 (1)

以下为演讲实录:

大家都知道游戏行业很多金,各个公司都是希望把更多的精力放在研发上,集中精力研发出更好的游戏。快是最重要的因素,让我们在这个行业里能赢。我们能帮到大家的有三方面。

一是产品的快速交付,我们看到的一组数据是这样的,做一个应用或者游戏的时候,百分之六七十的时间做开发,剩下的百分之三四十的时间是把这些游戏及应用部署到服务器上,让它们稳定地运行,升级换代的时候保证这些游戏不宕机,为客户持续地服务,这个成本本身是很高的。如果你的小公司有五台机器、十台机器,也许可以手工做这个事情,当你是大公司,有一千台服务器怎么做?这是非常具有挑战性的事情。

二是快速试错。一个用户进入到游戏内,应该在两三分钟内让他明白这个游戏是什么,喜欢这个游戏。反过来问一个问题,当你的游戏不能让他在两三分钟内明白和喜欢,那你怎么做?很多同仁会修改游戏的玩法,或者打一个补丁。但是你做这些升级的时候要花多长时间?亚马逊是很大的电商网站,一天能够做2千到3千次的试验探知用户的行为。对于游戏来讲,如果能作相同数量级的对用户的研究肯定会很有帮助。

三是快速响应。H5游戏本身有一些特性,用户访问量是有波峰和波谷的,波峰有10万的用户,波谷可能只有1万人。对于游戏厂商来讲,如果有10万的用户就要有10万用户的服务器,那这些服务器平时都是被浪费掉的。我们能帮助用户公司快速响应客户需求,根据客户需求弹性地满足他的计算要求。

2016TFC Docker如何助力游戏快速开发 (1)

Docker是下一代的虚拟化技术,相比于虚拟机,Docker有几大优势,Docker可以把计算成本降低到虚拟机的1/3到1/4左右;虚拟机的启动,大概要用四五分钟,Docker只用两三秒;Docker镜像只占几百M,虚拟机要用几个G甚至十几个G。

2016TFC Docker如何助力游戏快速开发 (2)

做游戏开发的时候经常会碰到一个问题,很多人会说这个产品在我自己的测试环境里跑得很好,但是当我把它放到测试环境的时候它跑不了,不是因为产品本身的问题,可能是因为环境的问题。Docker可以保证游戏和应用一次打包之后,只要在程序员的机器上能够运行,也能在测试环境和生产环境中运行。正是因为这种划时代的技术革命,Docker从2013年开始风靡全球,可以说是技术史上发展速度最快快的工具。

2016TFC Docker如何助力游戏快速开发 (3)

大部分做CP的公司都会有开发团队和运维团队。程序写好之后要交给运维团队初始化服务器,尤其当你的产品线比较多,服务器比较多,沟通带来的工作量将呈几何级数增长。对于这个问题,我们从Docker和平台的角度来讲,可以使程序员从开发到部署做所有的事情,不需要运维人员插手,当然这里面涉及到很多自动化的工作。

2016TFC Docker如何助力游戏快速开发 (5)

绿色部分是开发人员做的,蓝色部分是运维人员做的,他们的工作在不断的交手,基于Docker的平台可以让开发人员从写code到查屏全部由开发人员做,运维人员可以专注于生产环境。

5.png

灵雀云的产品有一个典型的交付场景,可以触发自动构建,自动构建里可以做单元测试,之后可以把应用和游戏放到Hub里,Hub就是游戏的进项,由程序员推到测试环境上,可以应用我们的批量计算服务,做系统级别的测试,如果测试顺利通过,它就可以放到生产服务器上。

2016TFC Docker如何助力游戏快速开发 (6)

快速交付的最后一块,微服务架构,技术上有点深,我们可以直接看这张图。以前的技术是这样的,单块的架构,整个应用是一个大的单块,Web服务器、中间的逻辑、日志、监控、数据库都放到一起。这样的应用如果要承载更多的用户,必需要买更大的服务器。当你做更新的时候,虽然只改了其中非常小的一部分,几个G、十几个G的应用都要影响,无论对于快还是对于效益来讲都是不划算的。

所以我们现在倡导微服务架构,把单块的体系拆成不同的组件,组件之间用标准的HTP方式来进行通信。假设游戏中某一个逻辑发生变化,只要更新计费的组件就可以了,不需要把整个游戏从头到尾都更新一遍。当你回到100台、200台服务器的时候,带来的效力变化就是指数级别。