全栈算力,加速行业AI落地 了解详情
写点什么

聊聊 Netflix 那些大胆的技术创新

  • 2021-08-19
  • 本文字数:2479 字

    阅读完需:约 8 分钟

聊聊Netflix那些大胆的技术创新

Netflix 这家公司不知道你有没有听说过,《纸牌屋》这样的风靡全球的原创剧就是他们出品的。但我了解这家公司,还是从一个介绍他们公司文化的 PPT 开始的,那个 PPT 的第一句就写着,“我们只招成年人,并愿意为大家支付行业的最高薪资”,如果你想看这个 PPT,可以在视频号给我私信。


因为这周六我要和 Netflix 的资深架构师徐振中老师直播连麦,所以又开始看这家公司的故事了。不看不知道,一看吓一跳,原来这公司这么厉害。这周真的强烈推荐大家一定要看下这场直播,我们可以一起了解世界顶级的技术组织在技术、架构、组织和文化方面的创新。


下面是极客时间老师杨波总结的 Netflix 比较牛逼的点,你可以先看看。直播的话,点击下方红色按钮就可以预约了。我请这位老师废了老大功夫,估计一年就这一次了。


1、微服务很多公司(eBay、Amazon、BAT)都有,甚至比 Netflix 做得更早,但 Netflix 大概是大规模生产级微服务做得最杰出的。100s 范围的微服务,1000s 范围的每日生产变更,10,000s 范围的实例,1,000,000s 范围的活跃客户数,1,000,000,000s 范围的度量。但是只有 10s 范围的运维工程师,没有自己的数据中心 NOC,应该算微服务 DevOps 的最高境界了。


2、Netflix 微服务技术栈的核心组件基本上都是开源的。Pivotal 在 2~3 年前把 Netflix 开源的这摊东西封装一下改头换面,再拼凑一些其它东西(配置中心,调用链监控等)就变成了 Spring Cloud。现在大家耳熟能详的 Zuul 网关,Eureka 服务发现注册中心,Hystrix 熔断限流,Archaius 配置等组件,Netflix 在 2012 年左右就都开源出来了。


3、开放开源是 Netflix 的一种竞争战略。Netflix 为啥热衷于要搞开源?第一,他们想将自己的解决方案建立为行业标准和最佳实践。第二,开源可以帮助建立 Netflix 技术品牌,这有利于他们雇佣、留住和吸引顶级工程师。第三,Netflix 可以从共享生态中获得反馈输入并受益。


4、大致在 09 年左右, Netflix 就开始启动上公有云战略(当然背后也是吃了自建数据中心的苦头),应用逐步向 AWS 迁移,这个过程一共持续了将近 5 年,到 15 年的时候,迁移完毕,全部应用上到 AWS。09 年左右的 AWS 还不太成熟,别说当时,即使现在也没有几个大公司不掂量一下敢提全部迁移公有云的战略。


5、Netflix 在 AWS IaaS 的基础上封装打造了自己的 PaaS 云平台服务 (大部分组件开源),包括平台运行时服务 (Eureka、Zuul、Edda、Atlas),平台库和框架 (Karyon/Ribbon、Hystrix、RxJava、Governator、Servo、Archaius、Astyanax),平台大数据和缓存服务 (Cassandra/ES/Hadoop Platform as a Service、EVCache、S3)。平台工具和服务 (Asgard/Aminator、SimianArmy/ChaosMonkey、ICE),这些都某种意义上代表了硅谷的技术风向标。


6、业内最近开始提出云原生架构的理念,Pivotal 是这个理念的主要推动者(背后主要是要推它的 Cloud Foundry 产品)。其实 Netflix 在 2013 年就提出了 Cloud Native 理念,而且它的整个平台 (AWS IaaS + PaaS) 就是云原生的。


7、Netflix 原来用 Oracle 等传统 SQL 数据库,但是受到扩展性挑战。公司架构管理层大胆颠覆性提出使用 Cassandra NoSQL 作为主要的持久化化存储机制,Netflix 在 2012 年就做到大部分数据存放 Cassandra 和 S3 等非关系数据库上。这个架构决策也是非常大胆有魄力,一般没有几个公司敢这么干的。Cassandra 本质上是一种 KV 数据库,更像 sorted map 存储,不支持事务,不支持 join。在 CAP 理论中,Cassandra 是展现 AP 特性,无中心分散式高可用,天然支持跨数据中心数据同步,这大概是 Netflix 最看重的特性。Cassandra 是读慢写快的特性(一般数据库是读快写慢),Netflix 大量使用 Memcached 做缓存补偿。


8、近年容器技术大火,大家都在谈不可变基础设施的理念,本质就是镜像部署。Netflix 在 2012 年前就已经实现镜像部署,发布的单位是 AMI(Amazon Machine Image) 镜像,通过持续交付工具 Asgard(现在升级版叫 Spinnaker)直接将镜像推到 AWS 云中部署,支持蓝绿(需要至少两倍虚机),灰度和金丝雀等部署模式。


9、Netflix 的发布管道叫 Paved Road,就是平台团队铺好的路,由提交,构建,AMI 镜像烘焙 (Image Baking) 和发布四个阶段组成。金丝雀发布之后,系统会自动生成金丝雀健康报告和分数(背后需要统计上千个 metrics + 复杂智能算法),达到一定的分数,比如 80 分,才能继续 roll out。这个也称发布自动刹车。


10、Netflix 大胆提出反脆弱架构的理念。为了让你的系统更加健壮,不是将它们严格保护起来,而是主动随机性地的增加一些破坏性测试,逼迫研发人员做好高可用。Netflix 从周一至周五,上午 9 点到下午 3 点,混乱猴子军团会随机杀生产实例,这个叫 Chaos Monkey,还有增加延迟的 Latency Monkey。


11、Netflix 的技术这么牛逼,但它是没有技术 CTO 职位的,只有首席产品 CPO,工程团队和产品团队的 VP 都向 CPO 汇报。这样做更多是为了产品导向,便于技术和产品沟通合作,避免两边扯,避免业务驱动还是技术驱动的悖论,大家都是产品驱动。Netflix 把它称为 BusDevOps 组织架构。


12、Netflix 也没有独立的运维团队,架构 + 中间件 + 运维 + 大数据闭环统称为云平台工程 (Cloud and Platform Engineering) 团队,一个 VP 总负责,更好地对接 DevOps 文化。Netflix 的产品导向文化非常浓厚,连平台工程团队开源出来的产品都是整整齐齐的,PaaS 云平台是整个云平台工程团队最大的产品输出。


13、无论公司兴衰,始终支付市场最高工资。不用多解释,这大概是 Netflix 最有霸气底气和牛逼的一点。据我在米国的同学讲,去 Netflix 基本是硅谷顶薪,博士毕业去给开了超过 30 万美金的年薪(这还是前几年的行情)。一般进去难,去了留下来也不容易,不胜任的被客客气气劝退的有。能留下来的一般也不跳,因为再跳也没有更高的待遇了。


怎么样,震惊不?虽然我们并不在 Netflix 工作,也没法建立 Netflix 那样的文化,但他山之石,可以攻玉,Netflix 的很多技术、架构、组织和文化思路值得我们学习和借鉴。8 月 21 日,周六,早上 9 点 30 分,我会连麦他们的资深架构师来聊聊具体的细节,记得预约



2021-08-19 09:424387
用户头像

发布了 219 篇内容, 共 135.4 次阅读, 收获喜欢 190 次。

关注

评论 3 条评论

发布
用户头像
错过直播,想看录播
2021-08-23 14:12
回复
没有了,下次的你关注视频号吧:极客时间小盖
2021-08-23 21:34
回复
用户头像
有点意思
2021-08-23 13:42
回复
没有更多了
发现更多内容

一键部署通义千问预体验丨阿里云云原生 5 月动态

阿里巴巴云原生

阿里云 云原生

2023北京智源大会亮点回顾 | 高性能计算、深度学习和大模型:打造通用人工智能AGI的金三角

蓝海大脑GPU

接口测试|HttpRunner简介及安装

霍格沃兹测试开发学社

HttpRunner

浅谈Vue3

这我可不懂

低代码 Vue3 JNPF

数智平台多维数据库:新时代的数据管理利器

用友BIP

数据库 数智平台

App Cleaner & Uninstaller Pro for Mac(Mac电脑应用程序卸载清理助手) 中文

背包客

macos Mac软件 MacBook Pro Mac清理软件 Mac卸载软件

REST 约束:以用户为中心的设计思路

Apifox

程序员 开发 Rest REST API RESTful API

软件测试/测试开发丨Python 内置库 json、正则表达式 re

测试人

Python json 程序员 软件测试

Video-LLaMA 开源,大语言模型也能读懂视频了!

Zilliz

计算机视觉 AIGC Towhee LLM

杭州云管平台企业有哪些?购买云管平台选择哪家好?

行云管家

云计算 云管平台 云管理 云管

Nautilus Chain测试网迎阶段性里程碑,模块化区块链拉开新序幕

威廉META

inBuilder今日分享丨Object-C消息转发与发送机制

inBuilder低代码平台

建议程序员人手一份,GitHub免费开源阿里巴巴分布式核心原理

小小怪下士

Java 程序员 分布式

开源数据库迎来拐点|2023开放原子全球开源峰会数据库分论坛成功召开

开放原子开源基金会

数据库 开源 开放原子全球开源峰会 开放原子

软件测试|f-string格式化输出的这些用法,90%的Pythoner不知道

霍格沃兹测试开发学社

喜讯丨和鲸科技获第七届杨浦“创业之星”大赛创业新锐奖

ModelWhale

迈向先进治理与运营范式|2023开放原子全球开源峰会开源社区治理与运营分论坛圆满收官

开放原子开源基金会

开源 开放原子全球开源峰会 开放原子 开源社区治理与运营

接口测试|HttpRunner模拟发送GET请求&自动生成测试报告

霍格沃兹测试开发学社

HttpRunner

提示工程:从人机交互视角解读

博文视点Broadview

AntDB数据库荣获2023年中国信创产业拳头奖“2023年中国信创数据库卓越品牌”

亚信AntDB数据库

数据库 AntDB AntDB数据库

单元测试|Unittest setup前置初始化和teardown后置操作

霍格沃兹测试开发学社

数仓架构“瘦身”,Hologres 5000CU时免费试用

阿里云大数据AI技术

数据库 大数据 企业号 6 月 PK 榜

2023年苏州市等级保护测评公司有哪些?分别叫什么名字?

行云管家

等级保护 等保测评 苏州

LED开关电源里的PCB回路设计应该怎么做?

华秋PCB

电路 PCB LED PCB设计 开关电源

软件测试|MySQL安装最全教程

霍格沃兹测试开发学社

如何通过数智平台多维数据库实现价值替代?

用友BIP

数据库 数智平台

开源字节 同城信息小程序

源字节1号

开源 软件开发 前端开发 后端开发 小程序开发

Final Cut Pro for Mac(fcpx专业视频剪辑工具)

背包客

macos FCPX软件 fcpx Mac视频剪辑软件 Final Cut Pro

阿里云携手开放原子开源基金会倡议发起云原生工作委员会,两大开源项目达成捐赠意向

阿里巴巴云原生

阿里云 开源 云原生

EndNote 20 for Mac(文献管理软件)

背包客

macos Mac软件 EndNote20 endnote EndNote for Mac

【有奖体验】叮!你有一张 3D 卡通头像请查收

阿里巴巴云原生

阿里云 Serverless 云原生

聊聊Netflix那些大胆的技术创新_云原生_小盖_InfoQ精选文章