写点什么

Netflix API 网关 Zuul 如何做到每秒处理两百万请求

  • 2019-09-10
  • 本文字数:2148 字

    阅读完需:约 7 分钟

Netflix API网关Zuul如何做到每秒处理两百万请求

ArchSummit北京2018大会上,Susheel Aroskar 讲师做了《Netflix API 网关 Zuul 如何做到每秒处理两百万请求》主题演讲,主要内容如下。


演讲简介


Zuul - Netflix API Gateway that handles 2M requests per second


How do we effectively route 2M requests per second to hundreds of backend services? How do we protect those backend services from constant DDoS attacks and retry storms? How do we keep Netflix humming along when an Amazon Web Services outage takes an entire AWS region out?


Meet Zuul - Netflix’s swiss army knife for application networking. Zuul is Netflix’s API gateway, load balancer, reverse proxy and more. It fronts all of the API traffic entering Netflix cloud and routes it to many backend services. It shields these backend services from retry storms, DDoS attacks and other outages shifting traffic across AWS regions, if necessary. It load balances millions of requests per second across thousands of machines, routing them intelligently and automatically around faulty instances.


In addition to this mission critical role in live production, Zuul is also invaluable during development and test to debug, canary and load test new features. Zuul lets us define new routing rules dynamically at run time that take effect near instantly without any deployments or restarts. This capability to slice, dice and change route for a portion of traffic quickly lets Zuul do all sort of tricks like canary / load testing, surgical traffic debugging for a single customer / device, black-holing malicious traffic etc.


At its heart, Zuul is a high performance, non blocking reverse proxy and layer 7 load balancer built on top of Netty. It supports multiple protocols including HTTP 1.0, HTTP 1.1, HTTP/2, WebSockets and Server Sent Events. It also offers flexible, configurable transport layer security including TLS, mTLS and application layer security like Netflix specific security protocols like MSL.


We will cover:


  • Zuul concept - where Zuul fits in overall Netflix architecture.

  • Zuul design - Architecture of Zuul and its fundamental components.

  • Zuul operation - How we operate 80+ Zuul clusters to proxy traffic to hundreds of backends

  • Zuul future - where are we going next with Zuul


参考译文


我们是如何有效的在每秒中向数百个后端服务发送请求的?我们又是如何保护这些后端服务免受持续的 DDoS 攻击和重试风暴?当 AWS 服务中断时,我们如何保持 Netflix 正常运作。


Zuul——被称为 Netflix 应用网络的瑞士军刀,它是 Netflix 的 API 网关,负载均衡器,反向代理等等。它掌控着 Netflix 云的所有 API 流量,并将这些流量分发到多个后端服务上。必要时,它可以保护这些后端服务免受重试风暴,DDoS 攻击以及其他服务中断在 AWS 区域之间转移流量带来的影响。它可以在数千台计算机上平衡每秒数百万个请求,并在故障实例周围智能的调度资源。


不仅在处理在线业务的过程中发挥关键作用,Zuul 在开发和测试过程中也非常有价值,可用于调试、测试、加载测试新功能。Zuul 支持在运行时动态定义新的分发规则,这些规则可以在无需任何部署或重新启动的情况下即时生效。这种切片,切块和更改部分流量分发的功能可以让 Zuul 执行各种任务,如为单个客户/设备、黑洞恶意流量做 Canary(金丝雀部署)/负载测试,以及外科式流量调试。


从本质上讲,Zuul 构建于 Netty 之上,是一个高性能,无阻塞的反向代理和 7 层负载均衡器。它支持多种协议,包括 HTTP 1.0,HTTP 1.1,HTTP / 2,WebSockets 和 Server Sent Events。还提供灵活可配置的传输层安全性,包括 TLS,mTLS 和应用层安全性,如 Netflix 特定的安全协议 MSL。


演讲提纲


  • Zuul 概念 - Zuul 适合整体 Netflix 的架构

  • Zuul 设计 - Zuul 架构及其基本组成部分

  • Zuul 运维 - 我们如何运维 80 多个 Zuul 集群来代理数百个后端的流量

  • Zuul 未来 - Zuul 的下一步打算


讲师介绍


Susheel Aroskar


Netflix Senior Software Engineer


Susheel works as a senior software engineer on the Cloud Gateway team at Netflix, which develops and operates Zuul - an API gateway that fronts all of the Netflix cloud traffic and handles more than 100 billion requests a day. Prior to Zuul, Susheel worked on Netflix CDN’s control plane in the cloud, which is responsible for steering more than a third of all North American peak evening internet traffic.


He joined Netflix just as Netflix was taking its first steps towards migrating from datacenter to cloud and he still has scars from those early days to prove it. He lives in California with his wife and daughter, both of whom find her dad jokes intolerable.












完整演讲 PPT 下载链接


https://archsummit.infoq.cn/2018/beijing/schedule


2019-09-10 14:011835

评论

发布
暂无评论
发现更多内容

低代码平台如何通过AI赋能,实现更智能的业务自动化?

天津汇柏科技有限公司

低代码 AI 人工智能

Avid Sibelius(西贝柳斯终极解锁版)

理理

taobao.item_get_desc API返回值中的促销信息与活动标签

技术冰糖葫芦

API 接口 API 测试 API 策略 pinduoduo API

TiDB替换Starrocks:业务综合宽表迁移的性能评估与降本增效决策

TiDB 社区干货传送门

8.x 实践

TiCDC 同步 SQL_MODE 相关

TiDB 社区干货传送门

6.x 实践 TiCDC 源码解读

鸿蒙网络编程系列36-固定包头可变包体解决TCP粘包问题

长弓三石

DevEco Studio 开发实例 HarmonyOS NEXT 网络与连接

鸿蒙网络编程系列37-基于TCP套接字的TLS通讯客户端示例

长弓三石

DevEco Studio 开发实例 HarmonyOS NEXT 网络与连接

电影特效合成The Foundry Nuke 15 for Mac破解版 附许可证 支持M1/M2

理理

测试人生 | 被裁员后人生低谷到绝处逢生,薪资怒涨近40%

测试人

软件测试

数据出境安全必知:22项政策为你指明出境之路!(附下载)

极盾科技

鸿蒙开发案例:垃圾分类

zhongcx

鸿蒙

区块链行业低迷的原因及未来发展展望

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 NFT开发 公链开发

选择堡垒机供应商需要考虑因素简单分析-行云管家

行云管家

堡垒机 网龄安全

专业的RAW格式图像处理软件 Capture One 23 Pro

理理

多功能mac音频转换工具 All to MP3 Audio Converter

理理

AI时代云动力:新一代弹性计算云主机开启智能计算新纪元!

天翼云开发者社区

云计算 云服务 云主机 弹性计算 天翼云

TouchDesigner Pro可视化原型渲染设计

理理

SketchUp Pro 2024 (草图大师2024)中文破解版

理理

专为macOS开发的系统还原工具:Deep Freeze mac版

理理

coconutBattery Plus for Mac(电池质量检测工具)

理理

重构商业生态:DApp创新玩法与盈利模式的深度剖析

区块链软件开发推广运营

交易所开发 dapp开发 链游开发 公链开发 代币开发

SQL-DSL框架之结果集处理

邱学喆

JDBC 类型处理器 配置类

案例分析——HyperWorks练习做模型简化

智造软件

案例分析 仿真软件 Hypermesh

运维成本降低 90%,存储成本降低 3 倍:多点利用 TiDB 资源管控功能将 100+ 套 MySQL 集合到一个 TiDB 实践

TiDB 社区干货传送门

性能调优 实践案例 版本升级 数据库架构选型 7.x 实践

洞见数据未来,StarRocks Summit Asia 2024 即将启幕!

StarRocks

探索AI,拥抱未来,欢迎加入魔乐世界!

天翼云开发者社区

人工智能 云计算

小试牛刀 - Kubernetes 上搭建 TiDB 集群

TiDB 社区干货传送门

实践案例

快速过等保2.0的小秘诀!

行云管家

等保 堡垒机 等保测评

CorelDRAW2023(cdr2023)for mac注册码及安装教程 支持M/intel

理理

亚马逊详情API接口的获取与应用

科普小能手

API 接口 API 测试 亚马逊API 亚马逊商品详情数据接口 亚马逊商品详情API

Calendar 366 II for Mac(菜单栏日历提醒工具)

理理

Netflix API网关Zuul如何做到每秒处理两百万请求_ArchSummit_Susheel Aroskar_InfoQ精选文章