向死而生:Netflix跌跌撞撞的长成之路(中)

苑伶@36氪Pro·2013-05-20 18:38
编者按:在上篇中我们提到2008年Netflix底层框架崩溃的事件,此事过后,Hastings一直对它留下的阴影耿耿于怀,他不允许同样的事故在Netflix更重要的流媒体视频服务上重演。但颇为奇特的是,他却选择把Netflix的数据全部搬到Amazon的云端上。

编者按:在上篇中(点这里)我们提到2008年Netflix底层框架崩溃的事件,此事过后,Hastings一直对它留下的阴影耿耿于怀,他不允许同样的事故在Netflix更重要的流媒体视频服务上重演。但颇为奇特的是,他却选择把Netflix的数据全部搬到Amazon的云端上。

微妙的Netflix与Amazon

Hastings和Hunt在过去25年间断断续续的有过合作,他们最初是在为油田技术服务公司Schlumberger的调研部门工作时结识的。据Hastings的说法,Hunt负责Netflix所有的技术,“技术上基本都听Neil的”,他说道,“该不该改进某项技术,都是由Neil来判断。并不是我认为什么东西好,他就一定会答应去做。”

不过据Netflix的工程师回忆,其实2008年技术框架崩溃之后,Hastings事实上主导了好几场技术会议。他不断强调这些技术事故如果不是发生在邮寄服务上,而是发生在流媒体视频服务中,那么带来的就将是毁灭性的打击。

后来,随着Netflix流媒体视频服务用户的不断增长,Hastings感觉到Netflix需要更强大的运算能力,他有两个选择——一是组建一批精英工程师的团队,建立Netflix自己的云计算中心,就像Google和微软做的那样;另外一个选择则是,把一切计算都交给云服务提供商。

Hastings恰好是Amazon和微软董事会的成员,于是Netflix开始试用Amazon和Microsoft的云服务,到了2009年,Hastings最终决定把赌注押在AWS上。但在此之前,Netflix还从未把如此重要的技术放到Amazon系统过,所以Hastings给Jeff Bezos写了封电邮,言明了自己的计划。

“我问Bezos他是否会对我的计划感到不快(注:因为Amazon有跟Netflix相竞争的业务)”,Hastings说,“如果他会的话,那我没有任何理由继续我的计划。”不过,Bezos爽快地同意了。

和Amazon合作后,Netflix几乎每时每刻都会调用到Amazon数据中心一万到两万台的服务器,这些计算机需要控制用户资料的存储、视频推荐、数字版权管理、视频文件转码以及控制不同系统中的播放效果。当有最新的Xbox或者Samsung智能手机面市,Netflix还需要调用额外的服务器来转换视频格式,以保证这些新设备上的用户可以正常观看视频。所以每一个白天,服务器得忙着流媒体视频的传送分发,而到了晚上,这些服务器又得转身变为数据分析的计算机。

Netflix几乎把AWS的功能发挥到了它的极致。“我们对AWS的利用比Amazon零售部门自己的人用得还要好,”Netflix的云架构师Adrian Cockcroft说,“我们十分确信这一点。”

放眼望去,行业里可能再没有什么比Netflix和Amazon之间更复杂更微妙的关系了。一方面,Netflix是Amazon最大的客户之一,它为此获得了优惠的报价以及和Amazon顶级工程师直接沟通的权利,每当Netflix需要一项什么新的软件功能时,Amazon都会很快为Netflix做好,当然这些新功能也惠及了其它一些Amazon的客户。“毫无疑问,在和Netflix的合作中我们的平台变得更强大、功能更完善了。”Amazon云事业部的负责人Andy Jassy说道。

由于Netflix依赖着Amazon的数据中心,所以700位Netflix工程师必须不断开发软件工具,让数以千机的云服务器可以自动实现启动并且完成配置。在硅谷,人们还为Netflix用来测试系统恢复能力的应用起了一系列外号,简直可以组成一个“猿猴军团”了。比如人们把随机关闭一下服务以模拟小故障的应用称作Chaos Monkey(捣蛋猴子),而把会关掉整个数据系统的应用称为Chaos Kong(捣蛋王)。

后来诸如EBay和Intel都开始在自己的云计算系统里用起了Netflix开发的这些工具。奥巴马选举时的云计算架构也同样得益于此。负责选举背后数据架构的Scott VanDenPlas提到了Netflix一个叫Asgard的软件工具,这个系统管理应用可以自动寻找服务器群组,并把需要执行特殊工作的软件匹配过去,让程序员需要做几个小时甚至几天的工作在几秒内完成。

“这个工具为我们节省了很多时间,同时也帮我们加快了决策的速度。”VanDenPlas如此说,当Sandy飓风在选举前两周席卷美国时,VanDenPlas及时地把Obama选举的基础框架从Amazon东海岸的数据中心转移到了西海岸的系统中。“如果没有Asgard,我们根本无法做到如此快速的反应,Netflix开发的这个工具让我们的执行效率获得前所未有的提升。”

Hastings与他的员工

你看到的Hastings通常会在两种极端的状态间切换:不是专心致志兴致勃勃,就是闲散随意不屑一顾。当他讨论他在意的事情时,他会显得无比精力旺盛,而对其它事情则几乎置之不理。他说他没有参与过Netflix总部的设计,只在办公设备都布置好了的时候才走进去逛了逛。“这就表示设计方面的事情不是我关注的,”Hastings说,但如果你想跟他聊诸如分布式标签数据库或者关键值存储的优势等等现代计算机科学技术,他会和你很有话说。

Hastings有着非常geek的一面。2005年12月,Hastings确信Netflix的打分系统可以为用户喜好预测系统提供所有必需信息,而公司内部的其他人则坚持认为光靠打分系统是不够的,还需要其它参考指标,比如用户点开视频和终止播放间的时间间隔,比如用户在搜索哪些明星等等。Hasting不服气,就把他圣诞假期的两周时间都花在了撰写Excel表格上——他要基于百万用户的评分写一套可以打败其他工程师认可的推荐算法。

事实证明,他输了,但却激发他设立了“Netflix奖”,以100万美元的奖金鼓励个人或团队来完善打分系统的算法。这个奖项为Netflix赢得不少关注度,因为最后Netflix把奖项颁给了一支由独立工程师组建的团队,他们为Netflix打造了一个更好预测引擎。而这次活动让凭借DVD邮购服务闻名的Netflix,第一次以创新殿堂的形象崭露头角。

因为Netflix在计算机科学上的成就,以及硅谷最高的薪酬,现在的Netflix已经可以招到它所想要的任何一位工程师。Netflix的管理者们每个月都会调查一下硅谷的薪酬水平,然后为自己的员工提供高于这个水平10%到20%的工资。甚至那些被炒鱿鱼的员工也能拿到丰厚的酬劳——这样老板在开除员工的时候就可以少些负罪感了。

说到招聘,Netflix还有一个特殊的倾向——更愿意招年长的而不是年轻的工程师。“我们雇佣的工程师几乎都到达了成熟稳重的年龄,”Cockcroft说,“在把他们招进来之前,通常先让他们在Google历练五年。”我在Netflix总部转了一圈,亲眼证实了这一点。Netflix工程师们的办公环境几乎是硅谷上世纪的格局,高高的隔板把每个人的工位围成一个半封闭的小方块,而今天的硅谷早就采用开放式的设计了。

Netflix办公室唯一还算符合潮流的一点是:浴室门上贴着经典娱乐节目的装饰画(类似动画《辛普森一家》里的人物),而Netflix的会议室是用影视节目来命名的,玻璃墙上还写着一两句经典台词。比如某次会议是在墙上标有“我不认为我正在失去它,Bob”台词的“Office Space”会议室里进行的。

+1
0

好文章,需要你的鼓励

参与评论
评论千万条,友善第一条
后参与讨论
提交评论0/1000

下一篇

Google是有史以来最成功的公司之一。Google给它的雇员20%的时间自由支配。那么,这是否就意味着给员工20%自由度的做法很棒且可借鉴呢?或者,Google的成功只是因为Google的工程师不管有没有这20%的时间,都能在正确的时间解决正确的问题?我不知道,相信其他人也不知道。

2013-05-20

36氪APP让一部分人先看到未来
36氪
鲸准
氪空间

推送和解读前沿、有料的科技创投资讯

一级市场金融信息和系统服务提供商

聚焦全球优秀创业者,项目融资率接近97%,领跑行业