NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

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:011722

评论

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

Amazon Lightsail 宣布为域注册和 DNS 自动配置提供支持

亚马逊云科技 (Amazon Web Services)

DNS cli VPS Amazon Lightsail Amazon Route 53

概念回顾:混合负载均衡、全局服务器负载均衡、DNS 负载均衡、云负载均衡

NGINX开源社区

什么是混合负载均衡? 什么是 DNS 负载均衡? 什么是云负载均衡?

聊聊性能测试的左移右移

老张

性能测试 稳定性保障 质量门禁

AdGuard for Mac(macOS上的广告拦截工具)中文版 支持M1/M2

Rose

AdGuard下载 Mac广告拦截 AdGuard Mac版

用友携手厦门国会:引领智能会计新时代,共谱数字教育新篇章

用友BIP

智能会计

你的Mac需要一次大扫除!试试App Cleaner & Uninstaller for Mac

Rose

App Cleaner 苹果mac系统优化 Mac清理工具

软件测试|Python字符串的这些操作,你可都学会了?

霍格沃兹测试开发学社

Proxifier for Mac(附Proxifier注册码):轻松实现全局代理,加速网络访问!

Rose

跨境电商 全局代理客户端 Proxifier破解版 Proxifier下载 Proxifier mac

敏捷专题:新一代的汽车软件研发

DevOps和数字孪生

敏捷 仿真建模 汽车行业

东莞理工学院第四届“火焰杯”软件测试高校就业选拔赛颁奖典礼

测试人

软件测试

打造美团外卖新体验,HarmonyOS SDK持续赋能开发者共赢鸿蒙生态

HMS Core

HarmonyOS

Vert.x教程(一):如何搭建一个web应用

Kevin_913

Java 教程 Vert.x

Mac上用于网络数据流量分析和嗅探的软件 Debookee 8

展初云

Mac软件 网络数据分析

用友签约索通发展,共建冶金行业新一代数智化智能工厂

用友BIP

软件测试|测试开发之路--UI 自动化常用设计模式

霍格沃兹测试开发学社

对话InfoQ,聊聊百度开源高性能检索引擎 Puck

百度Geek说

百度 开源

软件测试|Python数据可视化神器——pyecharts教程(一)

霍格沃兹测试开发学社

AI赋能,轻松出爆文!AI新闻创作新时代,你准备好了吗?

飞桨PaddlePaddle

新闻 AIGC 新闻写作

软件测试|数据可视化神器——pyecharts教程(二)

霍格沃兹测试开发学社

设备组件文件转换为EVE-NG环境的支持组件怎么操作呢

小魏写代码

office 2021中文破解版 (附最新Office LTSC 2021激活工具)支持macOS14

晴雯哥

一个平台搞定数据治理,让数据资产发挥价值

袋鼠云数栈

大数据 数据中台 数据治理 数据资产

第21期 | GPTSecurity周报

云起无垠

Kafka基本原理、生产问题总结及性能优化实践 | 京东云技术团队

京东科技开发者

消息队列 Kafk

用友&陕建数科携手共创,实现生态共赢!

用友BIP

数科公司

如何建设企业级API网关

RestCloud

API 网关 企业级低代码平台

office 2021中文破解版 (附最新Office LTSC 2021激活工具)支持macOS14

晴雯哥

软件测试|Python绘图神器——Matplotlib使用教程(一)

霍格沃兹测试开发学社

Premiere Pro 2024 Mac版系统要求 PR2024中文破解补丁

Rose

Premiere Pro2024激活版 Premiere Pro 2024 pr2024破解版

Infuse 7 Pro for Mac音视频播放器

展初云

播放器 Mac软件 Infuse

传统渠道DMS系统跟不上时代?是时候建立多级渠道运营系统了

用友BIP

渠道运营

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