收购还是自己做?当 Facebook 面临终极抉择

下一篇文章

硅谷之外的思考:科技公司如何改变世界

某种意义上来说,当一家公司已经成熟以后,他们一定会面对购买还是自己制作一种技术的决策。

像 Facebook 这么大的公司,肯定会不断地遭遇这种类型的选择。但是如果回到 2009 或者 2010 年左右,他们做了一个与众不同的决定。

当时,这家公司的成长速度已经快过地球上的任何一家其他公司,而且正在面临着如何将这种发展速度保持下去的难题。随后他们决定开始设计自己的电脑硬件,并且开始建造符合公司特殊需要的,自己的数据中心。

在那个时候,Facebook 通过常用的渠道来采购设备,并且计划通过一些协作设施来租用设备。但是商业设备——甚至从一些声誉很好的公司当中租用——都不够灵活,无法满足他们的需求。上个月,在和本站 TechCrunch 的对谈当中,Facebook 的基础设施工程总监,同时也是公司副总裁 Jay Parikh 就告诉我这些内幕。

Parikh 目前负责开发软件和硬件基础架构,这支持着 facebook 的运转,他坦诚地讲述了他们所面临的挑战,和公司最后做出的选择。这是一个重大的决定,包含了公司进行的主要投资,改变了公司运作的整体方式。

尽管事关重大,facebook 仍然可以显著的快速完成过渡,而且从不回头。

做巨大的调整

公司很明确自己到达了收购还是自己做的双岔路口,因为它发展的速度太快了。它的持续运营遭遇了障碍,这是持续增长的结果,同时对于业绩具有一定的冲击。

“我们不得不减缓产品和功能发布进程,因为我们没有足够的性能支持,所以,尽管产品已经足够成熟,可以随时上线,也必须等待时机。” Parikh 说。

随着 facebook 发展,公司需要尽快改变设备现状,但是现有设备的本性,使得扩充变得非常困难。公司不得不调试不同的东西,进程越深,要了解最底层的基础架构就越困难。他解释说:

“我们可以持续在相同的路径上,买设备,并且让所有东西运转,但是这是错误的,过程不平滑,造价高,而且一旦出了问题不知道从哪里找起。”

就是在这个时间点,公司做出了自己开发硬件设备的决定。

“在 2009 到 2010 年发生的第一件事情是,实现我们没有赶上进度的计划,还要平滑过渡,并控制在正常的支出水平上。为了平滑过渡并且控制开支标准,这迫使我们自己去构建相关设施。” Parikh 说。

走自己道路的优越性

一旦 facebook 掌握自己的命运,那么公司就可以以全新的方式,来完成硬件搭配。他们不再被旧的硬件设计的物理规则所捆绑,可以抛弃那些工程师开发多年来维持的设备存储的标准方式。当公司开始设计、建造和组装这些设备的时候,工程师获得了能量来重新思考设计的每一个角度。

facebook-hardware

这是 facebook 的磁盘阵列。

他们很精确地做到了一切。去年在 facebook 的硬件实验室当中,工程总监 Matt Corddry 告诉 TechCrunch,facebook 知道自身对硬件环境的需求强过其他任何公司:

““我们明白我们的挑战,开支,操作环境,并且需要比仅仅一个外部解决方案买者更多。我们可以有应对 facebook 特殊需求的专业优化。”

自从他们做了这个决策以来,facebook 已经开发了一系列的设备,比如机柜顶端交换器,允许对设备的每一个部分进行程序控制,给了整个系统极大的灵活性。

6pack_open

这是 facebook 的交换器部分。

与此同时,facebook 开始开发软件来管理这些自定义的设备系统,比如说 FBoss Agent。由公司自行开发的该软件是为了控制定制的机柜顶端交换器。

最终他们设计了高效的空间来存放这些设备,在去年秋季于艾奥瓦州的 Altoona 交付使用。facebook 对于数据中心的设计,每一个角度都掌控在自己手中。从如何冷却——使用百分之百的外部空气代替昂贵的空调系统——到电子设备和部件及其组装。

将设计结晶开源

在 facebook 开始设计他自己的设备和数据中心之后,他们做出了另外一个决定:让社区的力量加入其中,来解决一些软件和硬件的设计问题。它发起了“开放计算计划基金会”,这是一个由 facebook 创造的组织,来帮助这些设计被被分享出去。

这个组织的使命声明称,“开放计算计划基金会是一个快速成长的社区,由全世界的工程师组成。其使命是为可扩充计算而设计和交付最有效率的服务器,存储和数据中心硬件。”

并不奇怪的是,在这个声明当中用多种形式指出了 facebook 本身的使命,这个使命很明确的给了其他人一个机会,能够加入 facebook 的硬件设计当中,这样他们就可以达成可扩充计算的目标,同时帮助 facebook 来改进他自己的设计。这是一个任何人都可以获利的多赢局面。

在 4 年前 facebook 开展了这个项目,因为他们认识到了其他企业可能有类似问题需要考虑,而且一起工作会更加有更高的效率。Parikh 表示,“我们想要共同建造一个小组,来共享一些经常遇到的问题,而且共同来解决。”

他说,在去年一共有 1000 名工程师为 facebook 开始的项目做出了开源的贡献,但是他们并不在 facebook 内部工作。

谋定而后动

尽管 facebook 过渡到自建硬件的速度是很快的,如果觉得他们做这些决定太过武断,那就是大错特错了。facebook 拥有一个计划,依靠数据来保证获得想要的结果。Parkih 解释说,在宏观层面,facebook 所做的每一个决策都有数据的支持。

“当我们开始建造自己硬件路径的时候,我们就并未胡乱下手。我们只是设计和建造一个服务器,我们不会做所有的配置。我们是从最简单的设计开始的——从硬件角度,构建一个 web 服务器而开始。”

公司会持续复查数据。如果他们发现买比自己做更便宜的话,那就去买,同时这也是公司持续在评估的内容。他们同样还检测内部专家,并且询问对某个特定问题了解的人士,把他们的意见纳入考虑范围之内。

“我们想要让科技帮助我们获得数据,公司需要这些数据来完成他们的一部分业务。”Parkih 说。

除了以上这些决策,测试和大规模的转化之外,Parkih 试图让整个过程听起来不像是一个很大的难题。“这并不是航天那样的黑科技,我们知道自己的战略是什么,而且关注数据来行事。”听起来很简单,对吗?

翻译:dio

原文:When Facebook Grappled With The Ultimate Build Versus Buy Decision

blog comments powered by Disqus