Netflix 完成云端迁移

2008 年 8 月, Netflix 遭遇严重的数据库损坏事件,连续三天无法向成员用户寄送 DVD 光碟,从那时起,我们决定向云端迁移。那次事件让我们意识到,像 Netflix 数据中心的关系数据库那种垂直扩展的单点数据系统容易发生问题,我们必须转向高可靠的、水平扩展的云端分布式系统。Netflix 选择了亚马逊网络服务 (AWS) 作为云服务提供商,他们能提供给我们规模最大、最多样的的服务与功能。我们的多数系统,包括所有面向用户的服务,都在 2015 年之前转到了云端。然而我们当时还需要时间好好考虑结算部门以及用户和员工数据管理的安全和耐久的云端路径。这里我们高兴地宣布,经过七年的艰苦努力,在 2016 年 1 月,我们终于完成了云端的迁移,并已关闭所有的流媒体服务数据中心。

迁移到云端已为 Netflix 带来多项利益。相比于 2008 年,我们现在的流媒体用户增加了七倍,用户平均观看时间同时提高,八年内用户整体观看量增长了三个数量级:

Netflix 本身一直在不断地迅速演进,各项功能越来越倚赖新的资源和不断增长的数据体量。要支持这样迅速的增长仅靠我们自己的数据中心已力不从心,我们的服务器根本跟不上需要。云的弹性允许我们分分钟内添加数以千计的虚拟服务器和千万亿字节计的存储能力,为我们的扩张大开天地。2016 年 1 月 6 日, Netflix 将服务范围扩展了 130 余个国家,成为了真正意义上的全球互联网电视网络。Netflix 充分利用 AWS 覆盖全球的服务云区,动态调整服务网络,扩展全球网络服务能力,竭力为全球成员用户打造更好、更满意的流媒体服务体验。

依靠云来完成一切的可扩展计算和存储需求 — 我们的业务逻辑、分布式数据库和大数据处理/分析、产品推荐、转码以及 Netflix 应用的数不尽的功能。视频则通过分布全球的内容递送网络 Netflix Open Connect 高效发送到用户设备端。

云端也提高了 Netflix 服务的时段覆盖。我们的数据中心曾发生过数次故障,我们在云端虽也不可避免地遇到过一些 麻烦 ,尤其是在一开始迁移到云端的时候,但我们整体的时间覆盖率一直在稳定地提高,几乎已接近期望中的 99.99% 不停机运行的目标。对于任何的大型可扩展分布式系统(包括云端系统)而言,故障都无可避免。但是云端能通过本来不可靠且 冗余的 组件建成高度可靠的服务。通过在构架中贯彻冗余与柔性降级的原则,通过严格使用 Simian Army进行常规生产训练,我们的系统能够应对云端的故障,并且不会对用户体验造成影响。

削减成本不是 Netflix 迁向云端的主要原因,但是我们在云端的每流成本的确稳定在了只有数据中心成本的几分之一,这是附带的好处。这是因为云端更具灵活性,这样我们就可持续地优化实例类型组合,不必维持大的缓存能力即可在几乎转瞬之间增加或减少供应。我们也因大型云端生态系统带来的独特的规模效益而受益。

既然云端有这么多的好处,我们为什么还用了七个整年的时间完成迁移呢?真相是,向云端迁移非常地困难,过程中我们也必须不断地做艰难的选择。按说移向云端最简单的办法是把整个系统一股脑儿从数据中心纹丝不动地搬到 AWS 云端。但如果这样做,原来数据中心的一切问题和限制也就跟着搬了上来。因此我们选择在云端新建的模式,我们的一切技术几乎都经过重建,根本性地改造了 Netflix 的运营模式。从结构上讲,我们由单一的大块头应用转向了数以百计的微型服务,并借助 NoSQL 数据库反规范化了我们的数据模式。预算审批、集中发布协调与多周硬件准备周期让路,取而代之的是连续供应,工程团队借助宽松的 DevOps 环境利用自助工具独立决策,加速了创新。新的系统需要重建,新的技术需要学习,Netflix 需要时间和精力以转变成一家扎根云端的公司,但是,这些也让我们在持续成长并成为全球电视网络的路上处在了更为有利的位置。

Netflix 的流媒体技术在过去几年内发展迅速,我们现在终于可以不受过去的那些限制所制约。云对于这个产业中多数人来说还很陌生,还有很多疑问需要回来、很多问题需要解决。我们希望通过 Netflix Open Source, 这样的方案,持续地与那些伟大的技术头脑进行合作,一同应对以上挑战。

— Yury Izrailevsky、Stevan Vlaovic、Ruslan Meshenberg

来自以下位置的更多内容 公司博客

2016 年 1 月 Netflix ISP 速度指数

以下是 1 月份 Netflix ISP 速度指数数据的部分重要内容。这份有关互联网服务提供商 (ISP) 提供黄金时间最佳 Netflix 播放体验的报告每月更新一次。 了解详情

全球性视角看待影片推荐

今年一月,Netflix 的服务覆盖新增了 130 多个国家/地区。为了让世界各地的会员都能乐享 Netflix 服务,我们需要通过一种全球性的方法来解决许多复杂的技术问题。 了解详情

返回顶部