正文
978,000 - 682,000 = 296,000
取中间值并将其作为我们最终的数量。
296,000 / 2 = 148,000
682,000 + 148,000 = 830,000 或 978,000 - 148,000 = 830,000
所以我们估计 Facebook 在 2017 年共有 830,000 台服务器。
AWS 的全球基础架构,来源:AWS
AWS 可以按照下列方式分解:
-
地区 – 一个完整包含的地理区域(如“欧洲”或“美国西部”)。
-
可用区域(AZ) - 地区内由一个或多个数据中心组成的不同区域(如“伦敦”或“俄勒冈”)。
-
数据中心 – 基本上就是一种大面积,造价高昂的仓库,每个数据中心承载 5 万至 8 万台服务器。
截止 2017 年,AWS 共有:
-
16 个地区(还有 3 个在建)。
-
42 个 AZ(新地区上线后还将增加 8 个)。
相关信息可参阅 AWS 全球基础架构介绍。
假设平均每个数据中心有 6.5 万台服务器,平均每个 AZ 有 1.5 个数据中心,那么服务器的总数为 409.5 万台。四舍五入一下,假设 AWS 共有 410 万台服务器。
(42 AZ×1.5 个数据中心) * 65,000 台服务器 = 4,095,000
2014 年,Enterprise Tech 进行过类似的计算(不过是基于 28 个 AZ,但道理是相通的),最终估计的服务器数量介于 280 万到 560 万台之间。他们的估算中,每个 AZ 包含三个数据中心,如果这个假设是准确的,那么 AWS 在全球范围内可能会有超过 800 万台服务器。
在服务器净容量方面,根据上文(可能不准确的)计算,AWS 规模是 Facebook 的 5 倍。
补充说明:上述计算并未考虑 AWS 目前的容量局限。AWS 的日常运营有多少预留容量?AWS 是否有 20% 的预留容量可以分配给 Facebook?我们打算忽略这些问题,直接假设 AWS 可以完全容纳 Facebook 目前的需求,但可能要牺牲灵活性作为代价。
为了满足未来对服务器的需求,Facebook 和 AWS 都在服务器基础架构方面进行持续不断的投入,因此可以认为,未来的 AWS 也足以承载未来的 Facebook。
在服务器净容量方面,Facebook 有可能托管在 AWS 上吗?
很可能是可以的。
不能直接假定 AWS 与 Facebook 的服务器性能是相等的,因此还要考虑服务器性能的问题。Facebook 在服务器基础架构方面已经投入了数十亿美元,随着规模逐渐增长,他们经历了一台笔记本充当服务器,从第三方租用服务器,再到自建数据中心的过程。当他们开始自行设计并构建数据中心时,拆箱即用的解决方案就不再适合了。
Facebook 在建的沃斯堡(Fort Worth)数据中心,来源:DataCenter
Knowledge
Facebook 七个数据中心在各方面都以最大化性能和效率为设计目标。从数据中心整体设计到各种细节,例如服务器机架和芯片,一切都是定制的。
“为了优化成本,我们淘汰了你能在标准服务器上看到的大部分组件”,Facebook 服务器的设计者 Amir Michael 在 2009 年这样说过。
“我们拆掉了所有没用的东西,只保留最必要的。”
2011 年,Facebook 开源了自己有关数据中心和服务器的全部设计,借此表达对高效率设计的热爱。随后还有很多人对该项目做出了贡献,包括 Google。这些举措也推动了硬件成本的进一步降低,开始有第三方制造商生产相关组件,进一步降低了定制化数据中心的建设成本。你可以访问 Data Center Knowledge 查看完整的 Facebook 服务器硬件清单。
因此 Facebook 现有的服务器基础架构已经得到了大幅优化,可以帮助 Facebook 尽可能高效地运营。例如,他们在服务器场中开辟了一块单独的“冷存储”,专门用来保存不再有人查看的照片和视频(通常都是 10 年前上传至 Facebook 的内容)。只有在有人想要查看这些照片或视频时,才会“唤醒”这种存储设备。