Top Banner
Netflix Zuul
20

Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Mar 18, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Netflix Zuul

Page 2: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Contexte

2

Page 3: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Le statut de Netflix

➢ 100 Millions d’abonnés

➢ Utilisable sur plus de 1000 appareils

➢ 50,000 requêtes par secondes

➢ Présent dans 190 pays

➢ 42,000 Millions d’heures de streaming en 2015

3

Page 4: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Gateway

4

Page 5: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Qu’est-ce qu’un Gateway ?

➢ Fait le lien entre Internet et les services dans le Cloud

➢ Essentiellement utilisé pour gérer un trafic

➢ Nécessaire au fonctionnement du service

➢ Faire des checks, des authentifications

➢ Faire un suivi de requêtes

➢ Favorise fluidité

➢ Peut servir de plateforme d’expérimentations

5

Page 6: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Zuul

6

Page 7: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Pourquoi Zuul ?

➢ Des technologies existent déjà: AWS, Nginx, Mashery, etc.

➢ Personnalisable aux besoins précis du service et de l’API

○ Load Balancing

○ Logique de routing dynamique

○ Vue interne

○ Ancré dans un écosystème de MicroService

○ Protection du service

○ Outil d’assurance qualité

7

Page 8: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Architecture Cloud de Netflix

Page 9: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Zuul

➢ Créé en 2012

➢ Langage Groovy

➢ Micro Service

➢ Système de filtres

9

Page 10: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Filtres

➢ Types

➢ Ordre d’exécution

➢ Critères

➢ Action

➢ Ne communiquent pas entre eux directement

➢ Partagent leur état

➢ Compilés dynamiquement

10

Page 11: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Fonctionnement et Utilités

11

Page 12: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Succès ?

➢ Facile à utiliser

➢ Résultats immédiats

➢ Adopté à grande échelle

➢ Clients heureux

➢ Business Logic

➢ Système moins élastique

➢ Clarté

12

Page 13: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Stratégie

➢ Routing créatif et dynamique

➢ Mise en forme du trafic

➢ Vitesse de réaction

➢ Vue interne

➢ Focus sur la livraison, éviter les erreurs

➢ Stress Testing

13

Page 14: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Routing créatif

➢ Différentes versions implémentées en même temps

14

Page 15: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Mise en forme du trafic

15

Page 16: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Load Balancing intelligent

Page 17: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Zuul 2.0

17

Page 18: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Zuul 2.0

➢ Pas encore accessible en Open Source

➢ Non Bloquant, Asynchrone

○ Pas de threads, moins gourmand lors des connexions

○ Plus complexe à débugger

➢ Connexions persistantes

➢ Tous types de requêtes (HTTP/2, Websocket, etc.)

18

Page 19: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Bilan

19

Page 20: Netflix Zuul - imag · Le statut de Netflix 100 Millions d’abonnés Utilisable sur plus de 1000 appareils 50,000 requêtes par secondes Présent dans 190 pays

Sources

➢ https://spring.io/blog/2016/12/01/springone-platform-2016-replay-netflix-s-edge-gateway-using-zuul

➢ https://github.com/Netflix/zuul

20