9月8日上午9点,由全球最大中文IT社区CSDN、程序员深度交流社区ITeye和最具影响力技术期刊《程序员》主办的“2012中国软件开发者大会”于北京国家会议中心召开。
2012年被业界称为平台征战元年。在移动、云计算、物联网的大趋势下,整个信息服务产业正在面临重组洗牌,如何通过开放协作、构建和加入生态系统,加强竞争力,成为业界焦点。基于此,2012年SDCC将聚焦开放平台,解析各种平台技术,分享生态系统构建之道。同时,大会邀请知名产品负责人、大型互联网架构师以及企业一线资深工程师,就本年度主流技术、产品、应用实践等热点议题进行深入分享。腾讯科技对本次会议进行全程直播。
图为Netflix云平台高级软件工程师王晓中演讲
以下为Netflix云平台高级软件工程师王晓中演讲实录。
王晓中:大家好,很高兴和大家做交流,我目前想介绍一下Netflix目前的云架构,另外它怎么建立了适合云计算软件开发流程和经常使用的云计算工具,此外简单介绍一下Netflix企业规划。
我是2011年加入Netflix,现在是Netflix云平台高级软件工程师,主要负责客户端嫁给,我也是开源软件Archaius创始人之一,它是一个配置软件库,欢迎大家关注它。在Netflix之前我还在SUN Microsystems和Verisign。
Netflix是成立于1997年,现在主要是致力于互联网点播流媒体播放,运营模式是按月认购的无限即时视频流,现在视频业务遍及美国、加拿大、英国,不久还会很快登陆在北欧几个国家,有近三千万全球视频流用户,在美国是每到四到五家就有一家是Netflix的用户。同时Netflix在经营DVD邮寄出租业务,如果一句话概括Netflix的特点我想说它是美国好莱坞电影和旧金山高科技的结合。公司两个团队,一个就是在好莱坞专门负责跟电影发行商谈业务,选择并且购买一些版权。另外公司总部在旧金山,负责研发。这是进入Netflix首页的情形,Netflix网页一个很大特点就是有个性化的推荐,第一行就是TOP10,它认为这些电影中你可能最想看的10部电影是什么,他把你比较喜欢看电影的类别放在主页比较靠前的位置。我们的PPT出现一个互动环节,这是因为我七岁的女儿经常在Netflix看动画片。
在高峰期Netflix数据量占全美网络数据2%,Netflix API请求增长非常迅速,从去年每月20亿次访问,到今年7月40亿次访问,为了能够接受美国超过访问量,我们有数以百计的服务。如果在美国提到Netflix,尤其在科技界,人们会有两个反应,第一就是它的推拴法做得很好,另外利用云计算比较成功。我们公司所有业务都在Amazoe的公共云中,这是因为前两年公司经历了比较高速的增长,每年有超过几百万新用户增加,而且访问公司业务的流量会有突发性的增长,比如说新的iPhone或者iPad要发布的时候公司访问量猛增,这时候公司就要投入服务器达到需求,但是中小型公司不可能为了突发性业务增长购买大量设备,所以公司就自然想到了云计算。另外公司正在把业务项全球拓展,作为一个小公司不太可能全球都有投入。公司更希望把工具放在PAAS,使用云计算最大节省IT投入。使用云计算并不意味着就有一切,我明天谈我们怎么搭建我们云平台的,大家有兴趣可以来听。
为什么我们选择了Amazon,Amazon在美国是最大的公共云运营商,每小时可提供上千个新服务其,提供IAAS可同时满足软件开发和IT操作,Amazon部署在全球的Regioes/Zones具有良好的扩展性、冗余性,适于拓展国际业务。在Regions里面有好几个Zones,同样道理,Amazon在美国建了很多的Regions,公司某些业务还可以在另外的域上继续做。Amazon在拉丁美洲、欧洲、亚洲都有,这样适应于公司国际业务的拓展。
Netflix在API为中心的云架构,Netflix所有终端设备公司大部分服务都是无状态的,可以由任何一个服务器完成,为了保证良好扩展性充分利用AWS,使用分布式NoSQL存储和横向缓存。
Netflix在使用NoSQL上的探索,Netflix选择Cassandro为主要NoSQL存储,执行CAP理论的AHP,避免Single Point Of Failure,Cassandro写也是非常快的,它的读就慢一些,它得做一些修复工作,所以减慢了一些速度。Cassandro还可以把数据自动复制到多个数据分析。Cassandro也具有可调的一致性,它让数据速度读写非常快。当然Cassandro也存在的一些问题,除了刚才提到的数据一致性稍差一些以外,我觉得它还缺少分布式文件系统底层支持,扩展性低,很难写入一些插件增强功能。Cassandro为了保证快速地写牺牲了数据一致性,这样就不能时时起动Regair,当大规模Data Regair而过程中系统可用性降低
Netflix是怎么样建立适应云计算开发流程的呢?我们假设这个流程开始就是设计编程,然后就是构建,在构建过程中Netflix提供统一的构建模版,这样的好处是大大缩短了构建时间。下一步是制作Amazon Machine,我们公司提供了很多简便的命令制作AMI,提供了一些参数,这些参数包括你要构建的名字和你认为它运行的时候需要的类型。在AMI制作好以后就把它放到测试环境中部署,任何一个AMI都需要通过测试环境部署,我们不允许AMI不经过测试环境直接部署到生产环境中,如果测试环境没有问题才可以部署到生产环境。部署到生产环境以后是使用Amazon,在部署完以后就会声称一个叫做Autoscaler,它运行在多个服务器上,而且服务器数量可以自动伸缩的。
Netflix建立在开源软件啊的基础上,从某种意义上Netflix是一个拿来主义的,当他需要开发一些新的技术时,他会优先考虑那些现成的而且是已经比较成熟的技术,当这个条件不具备的时候他就自己开发一些工具或者软件。前一段时间我们已经把Netflix比较成熟的共聚合软件放在网上,有兴趣的朋友可以到Netflix的网站上关注一下。我介绍两个非常有影响力的Netflix的工具,一个是Asgard和Simian Amy。有了Asgard部署工具以后,实际上你只要在用户界面中设置基本参数,比如需要多少服务器、什么版本的AMI,Asgard可以帮你更新软件版本,假如说你监测发现新版本有问题也可以按一个键,那么Asgard就不会再接受新的软件版本。如果这个新版本运转正常,你就可以升级到新的版本上,再观察一段时间确信没有问题就可以放弃旧版本,这样就完成了软件版本的新旧交替。
另外一个常用的工具是“猴子军”,就是因为它里边所有工具名字里边都有一个Monkey,其中Chaos Monkey是最受关注的一个产品,顾名思义就是用来捣乱的,怎么捣乱?很简单,他会速记终止ASG中的一个或多个服务器,就是云计算中运算设备是比较便宜的硬件,这些硬件都是有寿命的,也许哪一天它就停止运转了,当然你可以把它换掉,但是换的这一到两分钟内可以少了一个或者多个服务器,这可能有灾难性的影响。Chaos Monkey是不等软件发生故障就开始模拟,在硬件不确定的情况下、硬件不稳定的情况下的读取。另外一个猴子是叫Latency monkey,它是认为的把系统反应时间延迟,系统可能正常时间需要20秒,但是它把这个反应时间延长到200秒,它的目的是看一个子系统出现延迟的话会不会对整个系统出现负面影响。
Netflix的企业文化,可以说Netflix他的企业文化是比较独树一帜的,Netflix文化核心就是自由与责任,作为一个软件工程师你有充分的自由做出各项选择。Netflix每个工程师都可以在部署和生产环境做出调整改变,这些操作不需要IT人员任何操作。什么是责任,你要为你做的每个错误选择而负责,你可能因为一个错误选择造成这个系统不稳定或者其他系统不稳定,那么你要尽快想办法找出解决方案把影响降到最低,另外一个责任是尽快把这个缺陷修好并且发布一个新的软件。自由与责任最好的体现是Netflix的休假制,任何人任何时间都可以修长的假期,这也是我站在这里的原因之一,休假是你的自由,但是你相应的责任是什么,你休假之前要把你该做的事情做好。而且你的休假不能给公司带来任何负面影响,其实你已经开始休假了,如果你的系统发生问题你也有责任在任何时间任何地方解决这个问题。Netflix另外一个企业文化是期待高效员工,在Netflix如果你的表现只是足够的话你大概也就可以走了,最后一点是技术面前人人平等,Netflix工程师不分等级,没有梯子可以爬,那怎么办?大家都认真做事,这样也鼓励员工用实干或者说靠自己的努力来争取有所作为来赢得别人对你的尊重。
非常感谢CSDN和刘江老师盛情邀请让我有这个机会和大家分享,谢谢。
为您推荐
8月2日,哥伦比亚广播公司(CBS)宣布,二季度收入同比增长超过100%,这得益于一个英明的决定——卖内容给Netflix。作为全球十大在线视频网站中唯一的收费网站,Netflix一直有些标新立异。在7月中旬提价60%,Netflix更是让人大跌眼镜。在美国人感叹日子不好过时,Netflix逆经济形势上调价格,遭遇了诸多用户的牢骚,可Netflix表示,事先已料到涨价会引发用户不满,但它并不准备让步。2010年注册用户超过2000万;按用户平均观看时长计算,超过11小时的Netflix位居首位;按独立用户访问量比较,6月Netflix超过Hulu——这也许正是Netflix大幅涨价的底气。不论
北京时间9月2日消息,据国外媒体报道,视频网站Netflix的流媒体内容目录将要遭受重创:Starz公司昨日声称将不会续签协议,并将于明年早些时候将它的电影和电视节目从Netflix网站上撤下。这一举措给Netflix网站带来了沉重的打击,因为Starz公司是少数几个能给Netflix网站提供较新电影的内容供应商之一。在Starz公司做出上述声明后几个小时,Netflix网站的股价下挫了将近8%。Starz公司是一家付费有线电视网络,可授权播放索尼的电影。早在2008年,Netflix网站就与Starz公司签署了长达四年的协议,利用Starz公司的内容向消费者提供流媒体服务。但是,在6月,几百
自从7月初北京广电局发文叫停视频网站的互联电视平台和互联网电视机顶盒以来,业界保持沉默但是并没有停下发展互联网电视的步伐。互联网电视政策正在明显向牌照方和广电系国字号企业倾斜。无论如何,中国的OTTTV已经处于爆发的前夜,这时候来看看美国的Netflix也许是个不错的选择。美国的互联网电视服务OTTTV和中国的互联网电视的始作俑者完全不同,美国最大的OTTTV服务提供商Netflix原本是一家DVD租赁公司,用快递的方式给用户递送实物DVD碟片。后来开通了互联网流媒体服务提供视频,租赁费就变成了每月的收视费,到目前为止Netflix仍旧提供实物碟片租赁服务,但是已经偏重于流媒体服务了。Netf
北京时间9月30日消息,据国外媒体报道,9月29日,美国视频网站和影碟租赁商Netflix股价暴跌11%,原因是市场担心亚马逊平板发布,以及微软相关动作将会加剧Netflix所面临的竞争压力。当天,Netflix股价暴跌了近14美元,跌幅高达11%,收盘价为113美元。七月份,其股价曾经创下将近300美元,然而在一连串利空消息的打击下,时至今日已经跌去了三分之二。一天前,亚马逊对外发布了七寸平板电脑,这款仅售199美元的平板,被外界视为苹果平板最有力的挑战者。亚马逊拥有数字书、电影、音乐等丰富的数字内容,平板电脑自然将成为新的内容销售管道。另外,彭博社报道称微软最早下周开始面向Xbox视频游戏