Netflix: que se passe-t-il lorsque vous cliquez sur play?


Cet article est un chapitre de mon nouveau livre, Explain the Cloud to a Ten-Year- Old. La première option a été écrite spécifiquement pour ceux qui ont besoin d'une introduction aux nuages. Ensuite, j'ai fait quelques mises à jour et ajouté quelques chapitres - "Netflix: que se passe-t-il lorsque vous appuyez sur Démarrer?" et "Qu'est-ce que le cloud computing?" - qui sont déjà un peu au-delà des connaissances d'un débutant. Je pense qu'ils pourront intéresser même des gens assez expérimentés.

Donc, si vous avez besoin d'une bonne introduction aux nuages ​​ou si vous connaissez quelqu'un qui en a besoin, jetez un coup d'œil. Je pense que vous l'aimerez. Je suis fier de ce que j'ai fait.

J'ai écrit ce chapitre sur la base d'une dizaine de sources, parfois contradictoires. Les faits clés changent au fil du temps et dépendent de qui raconte l'histoire et de quel public. J'ai essayé de faire une histoire cohérente autant que possible. Veuillez noter qu'il ne s'agit pas d'un guide technique - il s'agit d'un article avec de grandes images. Par exemple, je n'ai même jamais mentionné de microservices .

Netflix semble si simple. Cliquez sur "jouer" et la vidéo apparaîtra comme par magie. C'est simple, non? Oui, pas vraiment.



Après nos discussions dans le chapitre "Qu'est-ce que le cloud computing?" vous pouvez vous attendre à ce que Netflix fonctionne avec la vidéo à l'aide d'AWS. Cliquez sur "lire" dans l'application Netflix, et la vidéo stockée sur S3 sera diffusée directement sur votre appareil via Internet via Internet.

Une approche parfaitement raisonnable - pour un service beaucoup plus petit.

Mais Netflix a complètement tort. Tout est beaucoup plus compliqué et intéressant que vous ne pouvez l'imaginer.

Pour comprendre pourquoi, regardons les statistiques Netflix pour 2017:

  • Plus de 110 millions d'abonnés.
  • Travaillez dans plus de 200 pays.
  • Revenus de 3 milliards de dollars par trimestre.
  • Ajoute 5 millions d'abonnés par trimestre.
  • Joue plus d'un milliard d'heures de vidéo par semaine. En comparaison, YouTube joue 1 milliard d'heures de vidéo chaque jour, tandis que Facebook joue 110 millions d'heures de vidéo chaque jour.
  • Un jour de 2017, 250 millions d'heures de vidéo ont été visionnées.
  • Responsable de 37% du trafic Internet américain de pointe.
  • Prévoit dépenser 7 milliards de dollars pour de nouveaux contenus en 2018.

Qu'avons-nous appris?


Netflix est énorme. Il est mondial, il a de nombreux abonnés, il joue une énorme quantité de vidéos et il a beaucoup d'argent.

Un autre fait pertinent est que Netflix fonctionne par abonnement. Les abonnés paient Netflix tous les mois et peuvent se désinscrire à tout moment. Lorsque vous appuyez sur "play" pour vous détendre sous Netflix, il serait préférable que ce service fonctionne normalement. Les abonnés insatisfaits se désabonnent.

Jetez un œil plus profond


Netflix est un excellent exemple des idées que nous avons discutées, donc ce chapitre aura beaucoup plus de détails que la description d'autres services cloud. Une des raisons d'explorer Netflix en profondeur est qu'ils fournissent beaucoup plus d'informations que les autres sociétés. Les communications Netflix sont considérées comme un atout culturel majeur, et l'entreprise a plus que réussi à maintenir ses normes.

Je voudrais même remercier Netflix pour son ouverture sur son architecture. Au fil des ans, l'entreprise a donné des centaines de conférences et écrit des centaines d'articles sur les détails de leurs modes de travail internes. Cela contribue à améliorer l'ensemble de l'industrie.

Une autre raison de ces détails détaillés est que le service Netflix est tout simplement incroyable. La plupart d'entre nous l'ont utilisé - et qui ne serait pas intéressé à regarder dans les coulisses et à savoir comment cela fonctionne?

Netflix s'exécute dans deux clouds - AWS et Open Connect


Comment l'entreprise satisfait-elle ses clients? Avec l'aide de nuages. En fait, deux clouds différents - AWS et Open Connect. Les deux devraient fonctionner ensemble sans problème afin de produire de nombreuses heures de contenu vidéo qui satisfasse les utilisateurs.

Trois parties de Netflix: client, backend, réseau de diffusion de contenu


Vous pouvez diviser mentalement Netflix en trois parties: client, backend, réseau de distribution de contenu (CDN).

Client - une interface utilisateur qui s'exécute sur n'importe quel appareil utilisé pour afficher les listes de vidéos et les lire. Il peut s'agir d'une application mobile sur un smartphone, d'un site Web sur un ordinateur de bureau ou même d'une application sur un téléviseur intelligent. Netflix contrôle chaque client sur chaque appareil.

Tout ce qui se passe avant de cliquer sur le bouton de lecture se produit dans le backend exécuté sur AWS. Cela inclut des choses comme la préparation de toutes les nouvelles vidéos entrantes et le traitement des demandes de toutes les applications, sites Web, téléviseurs et autres appareils.

Tout ce qui se passe après avoir cliqué sur «jouer» est traité sur Open Connect. Il s'agit du propre réseau de diffusion de contenu de Netflix. Il stocke des vidéos dans divers endroits du monde. Lorsque vous cliquez sur «lire», le flux vidéo provient d'Open Connect sur votre appareil et il est affiché par le client. Ne vous inquiétez pas, nous parlerons de CDN plus tard. Il est intéressant de noter que le processus de lancement vidéo de la société ne s’appelle pas «cliquez sur« jouer », mais« cliquez sur «démarrer» sur le nom. »Chaque industrie a son propre jargon.

Contrôlant les trois domaines - client, backend, CDN - Netflix a réalisé une intégration verticale complète. L'entreprise contrôle votre expérience de regarder des vidéos du début à la fin. Par conséquent, cela ne fonctionne que lorsque vous cliquez sur "jouer" dans n'importe quelle partie du monde. Vous êtes assuré d'obtenir le contenu dont vous avez besoin, celui que vous souhaitez regarder et quand vous le souhaitez.

Voyons comment cela se passe exactement.

En 2008, Netflix a commencé à migrer vers AWS


Netflix est opérationnel depuis 1998. Au début, il s'occupait de la location de DVD par courrier. Mais l'entreprise a vu l'avenir du streaming vidéo à la demande. En 2007, Netflix a lancé son service de vidéo à la demande, qui permettait aux abonnés de diffuser des émissions de télévision et des films via le site Web de la société sur des ordinateurs personnels ou via le logiciel spécial de la société sur diverses plates-formes qu'il prend en charge, notamment les smartphones et les tablettes, les lecteurs numériques et les jeux. décodeurs et téléviseurs intelligents.

L'avenir du streaming vidéo à la demande peut sembler évident. En principe, c'était le cas. Personnellement, j'ai travaillé dans quelques startups essayant de publier des vidéos à la demande. Ils ont échoué. Et Netflix attendait le succès. L'entreprise a bien fonctionné, mais elle est arrivée tardivement sur le marché, ce qui l'a aidée. En 2007, Internet était suffisamment rapide et bon marché pour prendre en charge les services de streaming vidéo. Cela ne s'est jamais produit auparavant. L'arrivée d'un trafic mobile rapide et peu coûteux et l'introduction d'appareils mobiles puissants, tels que les smartphones et les tablettes, ont permis de regarder des vidéos en streaming à tout moment, n'importe où, plus facilement et à moindre coût. Le bon moment est la clé du succès.

Netflix a commencé avec ses propres centres de données


EC2 ne faisait que commencer en 2007, à peu près au même moment que Netflix. Par conséquent, Netflix n'a pas pu commencer à utiliser EC2. L'entreprise a construit deux centres de données situés à proximité. Et ils ont connu tous les problèmes dont nous avons discuté dans les chapitres précédents.

La construction de centres de données coûte très cher. Il faut du temps pour commander du matériel, son installation et son lancement. Immédiatement après le lancement, ils ont manqué de courant et tout a dû recommencer. Le temps passé sur l'équipement a obligé l'entreprise à adopter une stratégie de mise à l'échelle verticale.

Netflix a écrit de gros programmes qui s'exécutaient sur de gros ordinateurs. Cette approche est appelée la construction d'un monolithe. Un programme a tout fait. Le problème est que si vous grandissez aussi vite que Netflix, il est très difficile de faire un monolithe fiable. Il n'était pas fiable.

Le déni de service a forcé Netflix à migrer vers AWS


En août 2008, Netflix n'a pas pu envoyer de DVD pendant trois jours consécutifs en raison d'une défaillance de sa base de données. C'était inacceptable. Il fallait résoudre quelque chose. L'expérience de la construction de centres de données a appris à l'entreprise une chose importante: la construction de centres de données n'a pas bien fonctionné. Elle était douée pour transmettre des vidéos à ses clients. Elle devait se concentrer sur les améliorations de la diffusion vidéo, plutôt que sur les améliorations dans la construction de centres de données. La construction de centres de données n'était pas un avantage concurrentiel de l'entreprise - leur avantage était la livraison de vidéo.

À cette époque, Netflix a décidé de passer à AWS. AWS ne faisait que commencer, c'était donc une décision audacieuse. L'entreprise est passée à AWS car elle avait besoin d'une infrastructure plus fiable. Netflix voulait éliminer toutes les faiblesses du système. AWS proposait des bases de données, un stockage et des centres de données redondants très fiables. Netflix avait besoin de services cloud pour ne plus construire de monolithes non fiables. Netflix voulait devenir un service mondial sans construire ses centres de données. De telles opportunités dans ses anciens centres de données n'étaient pas et ne pouvaient pas l'être.

Netflix a choisi AWS parce qu'il ne voulait pas s'engager dans un dur labeur indifférencié. Un dur labeur indifférencié est ce qui doit être fait, mais cela ne donne aucun avantage à l'entreprise principale, qui consiste à fournir une visualisation vidéo de qualité. AWS fait tout ce travail acharné pour Netflix. Et cela donne aux netflixers la possibilité de se concentrer sur la fourniture de précieux services aux entreprises.

Le transfert d'une entreprise de ses centres de données vers AWS a pris plus de huit ans. Netflix a augmenté le nombre de clients huit fois pendant cette période. Netflix fonctionne désormais sur plusieurs centaines de milliers d'exemplaires d'EC2.

AWS Netflix plus fiable


Non pas que Netflix n'ait jamais connu de problèmes AWS, mais dans l'ensemble, son service est devenu beaucoup plus fiable qu'auparavant. Vous ne verrez plus de telles plaintes:





L'entreprise est devenue si fiable qu'elle a pris des mesures extraordinaires pour cela. Il opère dans trois régions AWS: la Virginie du Nord, Portland, Oregon et Dublin, Irlande. Dans chacun d'eux, Netflix opère dans trois zones d'accès différentes.

L'entreprise n'a pas l'intention d'augmenter le nombre de régions de travail. L'ajout de nouvelles régions est très difficile et coûteux. La plupart des entreprises opèrent dans une seule région, sans parler de deux ou trois.

L'avantage de travailler dans trois régions est que l'une d'entre elles risque de tomber, et les deux autres tomberont à sa place et serviront les clients de la région touchée. Netflix appelle la chute de l'évacuation de la région.

Prenons un exemple. Supposons que vous regardez un nouvel épisode de "House of Cards" à Londres, en Angleterre. Très probablement, votre appareil est connecté à la région de Dublin, car il est le plus proche d'elle. Que se passe-t-il lorsque la région de Dublin tombe? Netflix cessera-t-il de fonctionner pour vous? Non. Une fois qu'un problème est détecté, Netflix vous redirigera vers la Virginie. Votre appareil communiquera avec la région Virgin au lieu de Dublin. Vous ne remarquerez peut-être même pas d'échecs.

À quelle fréquence la région AWS échoue-t-elle? Une fois par mois. Eh bien, en fait, la région n'échoue pas tous les mois. Netflix effectue des tests mensuels. Chaque mois, Netflix supprime spécifiquement toute la région, juste pour s'assurer que leur système gère les défaillances régionales. Vous pouvez évacuer la région en six minutes.

Netflix appelle cela un modèle de service mondial. Chaque client peut être servi de n'importe quelle région. C'est incroyable. Et cela ne se fait pas automatiquement. AWS n'a pas de sauce magique pour gérer l'échec des régions ou servir les clients de différentes régions. Netflix lui-même a fait le travail. L'entreprise est pionnière dans la création de systèmes fiables utilisant plusieurs régions. Je ne connais pas d'autres entreprises qui prendraient de telles mesures pour assurer une telle fiabilité du service.

Un autre avantage de travailler à partir de ces trois régions est que Netflix peut couvrir le monde entier. Netflix a effectué des vérifications et a découvert qu'en lançant l'application partout dans le monde, dans tous les cas, vous recevrez un service rapide de l'une de ces régions.

Netflix enregistre à l'aide d'AWS


Cela peut en surprendre beaucoup, mais AWS pour Netflix est moins cher. Le coût du cloud en termes de visualisation de la vidéo est plusieurs fois inférieur à celui des anciens centres de données. Pourquoi? En raison de l'élasticité du nuage.

Netflix peut ajouter des serveurs selon les besoins et les renvoyer lorsqu'ils ne sont pas nécessaires. Au lieu d'un tas d'ordinateurs supplémentaires ne faisant rien, attendant simplement la charge de pointe, l'entreprise utilise exactement autant d'ordinateurs qu'elle en a besoin, et lorsque cela est nécessaire.

Que se passe-t-il sur AWS avant de cliquer sur play?


Tout ce qui n'est pas lié au dépôt de la vidéo est traité sur AWS. Cela comprend la puissance de calcul évolutive, le stockage évolutif, la logique métier, les bases de données distribuées évolutives, le traitement et l'analyse des mégadonnées, les recommandations, le transcodage et des centaines d'autres fonctions. Vous n'avez pas besoin de les comprendre tous, mais comme cela peut vous sembler intéressant, je vais les expliquer brièvement.

Puissance de calcul et stockage évolutifs


La puissance de calcul évolutive est EC2 et le stockage est S3. Il n'y a rien de nouveau pour nous ici. Votre appareil est un iPhone, un téléviseur, une Xbox, un smartphone Android, une tablette, etc. - communique avec un service fonctionnant en EC2. Votre appareil reçoit une liste de films potentiels à regarder en contactant un ordinateur exécutant EC2. Des informations détaillées sur la vidéo que votre appareil y reçoit. Tout fonctionne de la même manière que dans les autres services cloud.

Bases de données distribuées évolutives


Netflix utilise DynamoDB et Cassandra comme bases de données distribuées. Ces noms ne devraient rien signifier pour vous - ce ne sont que des bases de données de haute qualité. Les données sont stockées dans la base de données. Informations sur votre profil, sur les comptes, sur tous les films regardés - tout cela est stocké dans la base de données. Les bases de données distribuées ne fonctionnent pas sur un seul grand ordinateur, mais sur de nombreux ordinateurs. Vos données sont copiées sur de nombreux ordinateurs afin que même si un ou deux ordinateurs qui stockent vos données tombent en panne, vos données seront en sécurité. En réalité, toutes les données sont copiées dans les trois régions. Pour cette raison, en cas de défaillance d'une région, vos données seront disponibles dans une autre région vers laquelle vous serez transféré. Et la mise à l'échelle signifie que la base de données pourra stocker autant de données que vous y ajoutez. C'est l'un des principaux avantages des bases de données distribuées. Si plus de données arrivent, plus d'ordinateurs peuvent être ajoutés.

Traitement et analyse des mégadonnées


Les mégadonnées, c'est juste beaucoup de données. Netflix recueille beaucoup d'informations. L'entreprise sait qui a regardé, quand et où ils l'ont regardé. L'entreprise sait quelles vidéos ses clients ont vues, mais elle n'a pas commandé. Elle sait combien de fois chaque vidéo a été visionnée - et bien plus encore.

La collecte et la conversion de toutes les données dans un format standard sont appelées traitement. Et en extraire du sens - l'analyse. Les données sont analysées pour obtenir des réponses à des questions spécifiques.

Netflix personnalise les images spécialement pour vous


Voici un excellent exemple de la façon dont Netflix vous incite à regarder plus de films en utilisant des capacités d'analyse de données. Lorsque vous parcourez les listes, choisissez ce que vous voulez voir, avez-vous fait attention au fait que pour chaque film une photo est émise? Ceci est l'image du titre.

L'image du titre devrait vous intriguer, attirer votre attention et vous faire choisir cette vidéo. L'idée est que plus l'image est intrigante, plus vous avez de chances de regarder la vidéo. Et plus vous regardez de vidéos, moins vous avez de chances de vous désabonner de Netflix.

Voici un exemple des différentes images de titre de la série Stranger Things:



Vous serez peut-être surpris que chaque image de chaque vidéo soit sélectionnée spécialement pour vous. Tout le monde ne voit pas les mêmes images.

Auparavant, tout le monde voyait les mêmes images de titre. Voici comment cela a fonctionné. On a montré aux clients une image sélectionnée au hasard dans un ensemble, comme celle montrée dans l'illustration ci-dessus. Netflix a compté toutes les vues vidéo et enregistré quelle image a été montrée à l'utilisateur lorsqu'une vidéo a été sélectionnée. Supposons, pour notre exemple avec la série, que lors de l'affichage de l'image centrale du collage, la vidéo a été visionnée 1000 fois. Et lorsque vous montrez le reste des images - une seule fois.

Étant donné que l'image du groupe était meilleure que les autres pour attirer les utilisateurs à regarder, Netflix devait en faire l'image de titre de la série pour toujours. C'est ce qu'on appelle la sélection basée sur les données. Netflix fonctionne sur la base d'une analyse des données. Les données sont collectées - dans ce cas, le nombre de vues associées à chaque image - et utilisées pour prendre les meilleures décisions - dans ce cas, pour sélectionner une image de titre.

Astucieusement, mais cela peut-il être encore mieux fait? Oui, en utilisant encore plus de données. Pour ce sujet, l'avenir réside dans la résolution des problèmes grâce à l'apprentissage à partir des données. Nous sommes des personnes différentes. Pensez-vous que les mêmes images peuvent nous motiver? Probablement pas. Nous avons des goûts différents, des préférences différentes. Et Netflix le sait - alors maintenant, il personnalise toutes les images qu'il vous montre. Elle essaie de choisir une image qui met en évidence l'aspect le plus important de la vidéo pour vous. Comment fait-elle cela?

N'oubliez pas que Netflix enregistre et compte tout ce que vous faites sur son site Web. Elle sait quels films vous aimez, quels acteurs vous aimez, etc. Supposons que parmi vos recommandations se trouve le film "Good Will Hunting". Netflix devrait choisir une image d'en-tête appropriée. Le but est de montrer une image qui vous indique que ce film pourrait vous intéresser. Quelle image devez-vous montrer?

Si vous aimez les comédies, Netflix vous montrera une image avec Robin Williams. Si vous préférez les mélodrames, Netflix vous montrera une image de Matt Damon et Minnie Driver sur le point de s'embrasser.



Avec Robin Williams, le service vous dit que le film est susceptible d'avoir de l'humour, et puisque Netflix vous connaît comme les comédies, cette vidéo vous convient. Image Matt Damon et Minnie Driver envoient un message complètement différent. Si vous aimez les comédies et voyez cette photo, vous la manquerez très probablement. Par conséquent, choisir la bonne image est si important. Il envoie un message personnalisé fort racontant le thème du film.

Voici un autre exemple - Pulp Fiction:



Si vous avez regardé beaucoup de films avec Uma Thurman, vous verrez probablement l'image du titre avec Uma. Si vous avez regardé de nombreux films avec Travolta, vous verrez probablement l'image du titre avec John. Voyez comment le choix de la meilleure image personnalisée possible peut augmenter la probabilité de regarder une vidéo particulière?

Netflix fait appel à votre intérêt lors du choix des images, mais le service ne veut pas vous mentir. Il ne veut pas vous montrer juste une image attrayante pour vous faire regarder une vidéo que vous n'aimez pas. Il n'y a aucune incitation. Le service ne facture pas le nombre de vues. Le service essaie de minimiser les regrets et souhaite que vous aimiez ce que vous regardez, il sélectionne donc pour vous la meilleure image de titre possible. Et ce n'est là qu'un petit exemple d'analyse de données. Netflix utilise de telles stratégies partout.

Recommandations


Netflix vous montre généralement 40 à 50 choix de vidéos, mais le service propose des milliers de vidéos. Comment Netflix décide quoi afficher? Par apprentissage automatique.

Cela fait partie du traitement et de l'analyse des mégadonnées dont nous venons de parler. Le service examine les données et prédit ce que vous pourriez aimer. En général, tout ce que vous voyez sur l'écran Netflix a été sélectionné spécifiquement pour vous à l'aide de l'apprentissage automatique.

Transcodage du fichier source au format dont vous avez besoin


Et nous arrivons donc à la façon dont Netflix gère la vidéo. Avant de pouvoir commencer à regarder sur votre appareil préféré, Netflix doit convertir la vidéo au format qui convient le mieux à votre appareil. Ce processus est appelé transcodage. Il convertit un fichier vidéo d'un format à un autre, de sorte que la vidéo peut être visionnée sur différentes plates-formes et appareils. Netflix encode toutes ses vidéos sur AWS sur 300 000 processeurs simultanément. C'est plus que presque n'importe quel supercalculateur!

Source de données source


Qui télécharge des vidéos sur Netflix? Studios et associations de production. Netflix appelle cela les données brutes. La nouvelle vidéo est envoyée à l'équipe de contenu pour traitement. Il est disponible en haute résolution, de plusieurs téraoctets. Pour imaginer un téraoctet d'information, imaginez 60 piliers en papier, dont chacun est égal en hauteur à la Tour Eiffel.

Avant de pouvoir regarder la vidéo, Netflix l'expose à un processus rigoureux en plusieurs étapes.



Contrôle qualité


Tout d'abord, Netflix passe beaucoup de temps à vérifier la qualité vidéo. Elle recherche des artefacts numériques, des changements de couleur, des images perdues qui pourraient apparaître en raison de tentatives de transcodage précédentes ou de problèmes de transfert de données. Si des problèmes sont détectés, la vidéo est rejetée.

Convoyeur de traitement


Après avoir confirmé la qualité de la vidéo, elle est envoyée au pipeline de traitement. Il s'agit d'une séquence d'étapes que les données franchissent avant de pouvoir être utilisées - quelque chose comme un tapis roulant dans une usine. Plus de 70 programmes de traitement différents sont utilisés pour créer chaque vidéo.

Le traitement d'un fichier unique de plusieurs téraoctets n'est pas pratique, donc la première étape du pipeline sera de diviser la vidéo en plusieurs petits morceaux. Les pièces passent le long du convoyeur pour pouvoir être codées en parallèle, c'est-à-dire qu'elles sont traitées simultanément.

Nous montrons la parallélisation en utilisant un exemple.



Supposons que vous ayez une centaine de chiens sales à laver. Comment cela sera-t-il plus rapide de le faire - si une personne lave un chien après l'autre, ou si vous louez une centaine de lave-chiens et les lavez tous en même temps?

De toute évidence, le processus sera plus rapide si cent laveuses fonctionnent en même temps. C'est du parallélisme. C'est pourquoi Netflix utilise autant de serveurs EC2. Ils ont besoin de nombreux serveurs pour traiter ces fichiers vidéo géants en parallèle. Et cela fonctionne - la société affirme que le fichier source peut être encodé et envoyé au CDN en seulement 30 minutes.

Lorsque les morceaux sont encodés, ils sont vérifiés pour s'assurer qu'ils n'ont pas de nouveaux problèmes. Ensuite, ils sont à nouveau collectés dans un fichier et vérifiés à nouveau.

Le résultat est un tas de fichiers


Le processus de codage crée de nombreux fichiers. Pourquoi?L'objectif ultime de Netflix est de prendre en charge tous les appareils connectés à Internet. La société a commencé à opérer en 2007 sur la plate-forme Microsoft Windows. Au fil du temps, de nombreux autres appareils ont été ajoutés - Roku, LG, Samsung Blu-ray, Apple Mac, Xbox 360, LG DTV, Sony PS3, Nintendo Wii, Apple iPad, Apple iPhone, Apple TV, Android, Kindle Fire et Comcast X1.

Au total, Netflix prend en charge 2 200 appareils différents. Pour chacun d'eux, il existe un format vidéo qui a le meilleur aspect. Si vous regardez Netflix sur un iPhone, vous verrez la vidéo qui semble la meilleure sur un iPhone. L'entreprise appelle tous les différents formats vidéo un profil d'encodage. Netflix crée également des fichiers optimisés pour différentes vitesses de réseau. Si vous regardez un fichier sur un réseau à haut débit, vous verrez une vidéo de meilleure qualité que si vous la regardiez sur un réseau plus lent.

Il existe également des fichiers pour différents formats audio. L'audio est codé dans différents niveaux de qualité et différentes langues. De plus, il existe des fichiers avec sous-titres. Une vidéo peut avoir plusieurs sous-titres dans différentes langues. Il existe plusieurs options de visualisation différentes pour chaque vidéo. Ce que vous voyez dépend de votre appareil, de la qualité de la connexion, du tarif du service et du choix de la langue.

Alors, combien de fichiers y a-t-il?


Pour la série, The Crown Netflix stocke environ 1200 fichiers. La deuxième saison de Stranger Things a encore plus de fichiers. Il a été tourné en résolution 8K et comporte neuf épisodes. Les fichiers source prennent beaucoup de téraoctets de données. Il a fallu 190 000 heures de processeur pour encoder une seule saison. Le résultat est 9 570 fichiers vidéo, audio et texte différents.

Voyons maintenant comment Netflix lit tous ces fichiers.

Trois stratégies différentes pour diffuser des vidéos


Netflix a trois stratégies différentes pour lire des vidéos en streaming - son propre petit CDN, un CDN tiers et Open Connect. Commençons par la définition de CDN. CDN est un réseau de distribution de contenu. Pour Netflix, le contenu est, bien sûr, les fichiers vidéo dont nous avons discuté dans la section précédente. Le partage signifie que les fichiers sont copiés à partir d'un emplacement central sur le réseau et stockés sur des ordinateurs répartis dans le monde entier. Chez Netflix, l'emplacement de stockage central des fichiers est S3.

Pourquoi créer un CDN?


L'idée est simple: vous devez placer la vidéo le plus près possible des utilisateurs, distribuer des ordinateurs dans le monde entier. Lorsqu'un utilisateur souhaite regarder une vidéo, recherchez l'ordinateur le plus proche de lui et organisez un flux à partir de là vers son appareil. Les plus grands avantages de CDN sont la vitesse et la fiabilité.

Imaginez que vous regardez une vidéo à Londres et qu'elle vous est transmise de Portland, Oregon. Le flux vidéo doit passer par de nombreux réseaux, y compris le câble sous-marin, de sorte que la connexion peut être lente et peu fiable. En rapprochant la vidéo des personnes qui la regardent, vous pouvez rendre le plaisir de regarder une vidéo le plus rapide et le plus fiable possible.

Chaque emplacement de l'ordinateur qui stocke la vidéo est appelé un point de présence (PoP). Chaque PoP est un emplacement physique avec accès à Internet. Il y a des serveurs, des routeurs et d'autres équipements de télécommunication. Nous parlerons de PoP plus tard.

Le premier CDN était trop petit


En 2007, lorsque Netflix a introduit son service de streaming pour la première fois, il comptait 36 ​​millions d'abonnés dans 50 pays, qui regardaient plus d'un milliard d'heures de vidéo chaque mois et recevaient plusieurs térabits de données par seconde. Pour prendre en charge le service, Netflix a construit son propre CDN simple dans cinq endroits différents aux États-Unis. Le catalogue vidéo de l'entreprise était assez petit et tous les fichiers étaient stockés à tous les endroits.

Le deuxième CDN était trop gros


En 2009, Netflix a décidé d'utiliser un CDN tiers. À cette époque, le coût du CDN a commencé à baisser. L'utilisation de réseaux tiers était une décision intelligente pour Netflix. Pourquoi perdre du temps et des efforts à construire vos réseaux si vous pouvez atteindre immédiatement n'importe quel endroit de la planète avec les CDN existants?

Netflix a travaillé pour fournir des services CDN avec des sociétés telles que Akamai, Limelight et Level 3. Il n'y a rien de mal à utiliser des CDN tiers. En fait, presque toutes les entreprises le font. Par exemple, la NFL a utilisé les services d'Akamai pour présenter en direct des compétitions de football américain. Sans créer ses propres CDN, Netflix a libéré du temps pour travailler sur d'autres projets prioritaires.

L'entreprise a consacré beaucoup de temps et d'efforts à développer des clients plus intelligents. Netflix a créé des algorithmes qui s'adaptent aux conditions changeantes du réseau. Même en cas d'erreur, de surcharge du réseau ou du serveur, l'entreprise souhaite que les utilisateurs aient la meilleure image possible. L'une des technologies développées par l'entreprise - le passage à une autre source vidéo - par exemple, à un autre CDN ou à un autre serveur - pour obtenir le meilleur résultat.

Dans le même temps, Netflix consacre beaucoup d'efforts à prendre en charge tous les services AWS que nous avons mentionnés précédemment. Netflix appelle les services AWS un plan de référence. Le plan de contrôle est un terme de réseau pour la partie du système qui contrôle tout le reste. Dans votre corps, votre cerveau est le plan de contrôle - il contrôle tout le reste.

Et puis Netflix a décidé qu'ils pouvaient améliorer le service en développant leur propre CDN.

Open Connect était parfait


En 2011, Netflix s'est rendu compte qu'à leur échelle, ils avaient besoin d'une solution CDN dédiée pour maximiser l'efficacité du réseau. La distribution vidéo est une compétence de base de l'entreprise et peut être un énorme avantage concurrentiel. Par conséquent, Netflix a commencé à développer Open Connect, son propre CDN spécial. Cela a commencé en 2012. Open Connect présente de nombreux avantages:

  • Elle n'est pas si chère. Les CDN tiers sont plus chers. Le faire vous-même signifie économiser beaucoup d'argent.
  • Meilleure qualité. Netflix a estimé qu'en contrôlant l'intégralité du chemin de la vidéo - transcodage, CDN, clients, appareils - elle pourrait fournir une excellente qualité de service.
  • . . , .

Les CDN tiers doivent prendre en charge les utilisateurs qui ont besoin d'accéder à n'importe quel contenu de n'importe où dans le monde. La tâche de Netflix était beaucoup plus simple.

Netflix connaît ses utilisateurs à coup sûr lors de leur inscription. Elle sait quelles vidéos transférer. Tout simplement parce que vous avez seulement besoin de transférer des flux vidéo volumineux, vous pouvez prendre de nombreuses mesures pour optimiser intelligemment les réseaux que d'autres CDN ne peuvent pas faire. Netflix en sait également beaucoup sur ses clients. L'entreprise sait quelles vidéos elle aime et quand elle aime les regarder.

Fort de cette connaissance, Netflix a construit un CDN haute vitesse. Examinons de plus près comment fonctionne Open Connect.

Ouvrir les périphériques de connexion


Rappelez-vous comment nous avons discuté de la distribution des ordinateurs CDN dans le monde? Netflix a développé son propre système informatique de stockage vidéo. Netflix l'appelle appareils Open Connect (Open Connect Appliances, OCA). Voici à quoi ressemblait l'une des premières installations OCA:



Sur la photo - plusieurs OCA à la fois. Les OCA sont regroupés en grappes de plusieurs serveurs. Chaque OCA est un serveur rapide optimisé pour la sortie de fichiers volumineux, avec de nombreux disques durs ou lecteurs flash stockant la vidéo. Voici à quoi ressemble l'un des serveurs OCA:



À des fins différentes, il existe plusieurs types d'OCA. Il existe de gros OCA capables de stocker l'intégralité du répertoire vidéo de l'entreprise. Il existe de petits OSA qui ne peuvent stocker qu'une partie du répertoire vidéo. Les petits OCA sont remplis de fichiers vidéo quotidiennement pendant les heures de pointe pendant la mise en cache proactive.

En termes d'équipement, l'OSA n'a rien d'exceptionnel. Ils sont basés sur des composants PC conventionnels et divers fournisseurs les assemblent dans différents packages. Vous pouvez acheter les mêmes ordinateurs si vous le souhaitez. Veuillez noter que tous les ordinateurs Netflix sont rouges. L'entreprise les commande spécifiquement pour qu'ils correspondent à la couleur du logo.

En termes de logiciels, les OSA utilisent le système d'exploitation FreeBSD et nginx comme serveur Web. Oui, chaque OSA est un serveur Web. Les flux vidéo utilisent nginx. Si ces noms ne vous disent rien - ne vous découragez pas, je ne les inclue que pour compléter l'image.

Le nombre d'OSA locaux dépend de la fiabilité que Netflix veut atteindre à un endroit particulier, de la quantité de trafic qu'il dessert et du pourcentage de trafic que ce centre peut envoyer en tant que flux. Lorsque vous cliquez sur «lire», vous regardez un flux vidéo provenant d'une OSA spécifique - comme celle ci-dessus, située près de chez vous.

Pour la meilleure expérience de visionnement, Netflix souhaite mettre en cache la vidéo directement dans votre maison. Mais pour l'instant, ce n'est pas pratique. La prochaine option la plus pratique consiste à placer un mini-Netflix près de votre domicile. Comment cela peut-il se faire?

Où Netflix héberge-t-il l'OCA?


Netflix distribue d'énormes quantités de vidéos à partir de milliers de serveurs situés dans plus de 1000 centres de données à travers le monde. Jetez un œil à cette carte de localisation du serveur vidéo:



D'autres services vidéo, tels que YouTube et Amazon, diffusent des vidéos sur leurs propres réseaux. Ces sociétés ont littéralement construit leurs propres réseaux mondiaux pour diffuser des vidéos aux utilisateurs. C'est très compliqué et cher. Netflix adopte une approche complètement différente pour la construction d'un CDN.

Netflix ne fonctionne pas sur son réseau, il ne fonctionne pas depuis ses propres centres de données. Au lieu de cela, les fournisseurs de services Internet (FAI) acceptent d'héberger l'OCA. Netflix offre aux fournisseurs gratuitement d'intégrer leurs serveurs dans leur réseau, en plus, il place l'OSA à proximité des points d'échange de trafic (emplacement d'échange Internet, IXP).

Cette stratégie permet à Netflix de ne pas construire ses propres centres de données, mais l'entreprise obtient tous les avantages d'être dans un tel centre - il appartient simplement à quelqu'un d'autre. Ingénieux! Décomposons les deux derniers paragraphes en étapes plus simples.

Utiliser ISP pour créer un CDN


ISP est votre fournisseur de services Internet. C'est celui qui vous fournit Internet en tant que service. Il peut s'agir de Verizon, Comcast, Beeline ou l'un des milliers d'autres. L'essentiel est que les FAI soient situés dans le monde entier et proches des clients. En hébergeant OCA dans des centres de données FAI, Netflix est également distribué dans le monde entier et proche de ses clients.

Utiliser IXP pour créer un CDN


Un point d'échange de trafic est un centre de données où le FAI et le CDN échangent du trafic entre les réseaux. C'est comme aller à une fête pour échanger des cadeaux de Noël avec des amis. Le partage est plus facile si tout le monde s'est réuni au même endroit.

IXP dispersés dans le monde:



Voici à quoi ressemble l'IXP à Londres:



Si vous vous approchez de ces câbles à fibres optiques jaunes, voici ce que vous verrez (basé sur le point d'échange AMS-IX à Amsterdam):



Chaque câble relie un réseau à un autre. C'est ainsi que différents réseaux échangent du trafic entre eux. L'IXP est comme un échangeur routier, uniquement avec des câbles:



Pour Netflix, c'est un autre avantage. Les IXP sont situés dans le monde entier. En plaçant l'OSA dans IXP, l'entreprise peut ne plus avoir ses propres centres de données.

Vidéo mise en cache de manière proactive sur OSA


Netflix a un tas de vidéos situées dans S3. Les ordinateurs de transmission vidéo sont situés dans le monde entier. Une seule chose manque: la vidéo elle-même! Netflix utilise un processus appelé mise en cache proactive pour copier efficacement la vidéo vers OCA.



Qu'est-ce que le cache cache - cache]? C'est un endroit souvent situé dans le pays où les cartouches secrètes, la nourriture et les trésors sont secrètement stockés. Savez-vous comment les écureuils cachent les noix pour l'hiver? Chaque endroit où un écureuil a caché une noix est une cache. En hiver, tout écureuil peut trouver une cache de noix et les mâcher. Les explorateurs de l'Arctique envoient de petites équipes à l'avance qui mettent en cache de la nourriture, du carburant et d'autres fournitures le long du chemin qu'ils suivent. Une équipe plus importante qui court derrière s'arrête à chaque cache et restaure. Les chercheurs sur les protéines et l'Arctique travaillent de manière proactive; ils font quelque chose à l'avance pour préparer l'avenir.

Chaque OCA est un cache vidéo de ce que vous souhaitez probablement regarder. Netflix met en cache la vidéo, prédisant ce que vous voulez regarder. Partout dans le monde, Netflix sait avec une grande certitude que ses clients adorent regarder. Rappelez-vous que nous avons dit que Netflix est une entreprise axée sur les données? Elle utilise les données de popularité pour prédire quelles vidéos ses clients sont susceptibles de vouloir regarder demain n'importe où. Par endroit, on entend ici un cluster OSA situé au niveau du FAI ou de l'IXP. L'entreprise copie les vidéos prévues dans un ou plusieurs OCA dans chacun des endroits. C'est ce qu'on appelle une mise en page préliminaire. La vidéo est hébergée sur l'OSA avant que quiconque ne la demande. En conséquence, les clients reçoivent un excellent service. La vidéo qu'ils souhaitent regarder est déjà proche d'eux, sous une forme prête à être visionnée.



Netflix fonctionne avec ce qu'on appelle cache lié. Les petits OCA sont hébergés par ISP ou IXP. Ils sont trop petits pour contenir tout le catalogue vidéo. Ailleurs, il existe des OSA qui ont presque tout le répertoire vidéo Netflix. Et ailleurs, il y a des endroits où l'OSE dans lequel ils contiennent l'intégralité du catalogue Netflix. Ils reçoivent la vidéo de S3.

Chaque nuit, l'OSA se réveille et interroge le service AWS pour connaître le type de vidéos dont il a besoin. Le service lui envoie une liste de vidéos qu'il devrait avoir, construites sur la base de prédictions. Chaque OCA est responsable d'avoir toutes les vidéos dans cette liste. Si l'un des OCA à un endroit possède l'une des vidéos nécessaires, l'OCA de mise en cache copiera cette vidéo de lui. Sinon, la vidéo sera trouvée et prise dans une OSA, située pas très loin.

Étant donné que Netflix prédit qu'il sera populaire demain, il y a toujours un handicap un jour avant que la vidéo ne soit nécessaire sur l'OSA. Cela signifie que la vidéo peut être copiée dans un temps calme, en dehors de la charge de pointe, ce qui réduit considérablement l'utilisation de la bande passante du FAI.

Open Connect n'a jamais manqué de cache. Un échec est lorsqu'une vidéo spécifique est demandée à l'OSA, et il répond qu'il ne l'a pas. Des erreurs se produisent sur d'autres CDN car ils ne peuvent pas se permettre de copier tout le contenu partout. Étant donné que Netflix connaît toutes les vidéos qui doivent être mises en cache, il sait exactement où et quelles vidéos se trouvent à quel moment. Si une petite OSA n'a pas la vidéo souhaitée, elle sera garantie par l'une des OSA les plus importantes.

Et pourquoi Netflix ne copie-t-il pas simplement toutes ses vidéos dans tous les OCA du monde? Son répertoire vidéo est trop grand pour ça. En 2013, le volume du catalogue dépassait 3 pétaoctets; ce qu'il est aujourd'hui, je ne sais pas, je ne peux que supposer beaucoup plus. C'est pourquoi la société a développé une méthode pour sélectionner les fichiers vidéo qui doivent être stockés sur chaque OSA, en utilisant des données qui prédisent que les abonnés voudront regarder.

Prenons un exemple. "House of Cards" est une émission très populaire. À quel OSA doit-il être copié? Très probablement, partout, car les abonnés du monde entier veulent le regarder. Mais que se passe-t-il si la vidéo n'est pas aussi populaire que le château de cartes? Netflix décide dans quels endroits les copies doivent être stockées afin de répondre au mieux aux besoins de tous les clients immédiats.

Au même endroit, les vidéos les plus populaires sont copiées dans de nombreux OSA. Plus la vidéo est populaire, plus les serveurs en stockent une copie. Pourquoi? Si une vidéo très populaire n'avait qu'une seule copie, le flux vidéo vers tous les clients surchargerait le serveur.

Une vidéo n'est pas considérée comme préparée pour la distribution si elle est copiée dans un seul OSA. Netflix veut pouvoir lire le même contenu en même temps dans le monde entier. Ce n'est que lorsqu'il y a un nombre suffisant d'OSA avec un nombre suffisant de copies de la vidéo afin de la fournir de la bonne qualité que la vidéo est considérée comme préparée pour la visualisation.

Par exemple, la deuxième saison de l'émission Daredevil en 2016 était la première fois que Netflix sortait tous les épisodes de la série sur tous les appareils dans tous les pays en même temps.

Placement OSA: pourquoi les prestataires en ont-ils besoin?


Pourquoi les fournisseurs acceptent-ils d'héberger des clusters OSA? À première vue, c'est trop généreux - mais il sera intéressant pour vous de découvrir que le profit personnel est réellement impliqué ici. Pour comprendre cela, nous devons parler du fonctionnement des réseaux. Dans ce livre, nous avons expliqué que l'accès aux services cloud se fait via Internet. Dans le cas de Netflix, ce n'est pas le cas - lors de la visualisation de vidéos via l'application Netflix, il communique avec AWS sur Internet. [on ne sait pas très bien quelle différence l'auteur avait en tête // env. perev.]

Internet est l'interconnexion des réseaux. Vous avez un fournisseur qui fournit un accès Internet. Je reçois mon service Internet de Comcast. Cela signifie que ma maison est connectée au réseau Comcast via la fibre optique. Le réseau Comcast leur appartient - ce n'est pas Internet, Internet est autre chose.

Supposons que je veuille faire une recherche sur Google, que je tape une demande dans le navigateur et que j'appuie sur Entrée. Ma demande passe d'abord par le réseau Comcast. Google n'est pas situé sur le réseau Comcast. À un moment donné, ma demande devrait être envoyée au réseau Google. Pour cela, il y a Internet. Internet connecte le réseau Comcast au réseau Google. Il existe des protocoles de routage qui fonctionnent à la manière d'un contrôleur de trafic routier et d'un trafic réseau direct. Lorsque ma demande est envoyée sur Internet, elle se situe en dehors du réseau Comcast et en dehors du réseau Google. Il est situé dans l' épine dorsale d'Internet . Internet est connecté à partir de nombreux réseaux privés qui décident d'interagir les uns avec les autres. IXP est l'une des façons dont les réseaux communiquent entre eux.

Aux États-Unis, il existe une carte des réseaux de fibre distants:



Netflix a fait ce qui suit avec son Open Connect: il a hébergé des clusters OSA au sein des réseaux ISP. Cela signifie que si je regarde une vidéo Netflix, je parle à un OSA situé sur le réseau Comcast. Tout mon trafic vidéo passe sur leur réseau et ne va pas en ligne.

La clé de la mise à l'échelle de la diffusion vidéo est d'être aussi proche que possible de l'utilisateur. Lorsque vous faites cela, vous n'utilisez pas de dorsales Internet. Les demandes sont satisfaites dans la partie locale du réseau. Pourquoi est-ce bien? N'oubliez pas, nous avons dit que Netflix consommait déjà plus de 37% du trafic Internet aux États-Unis. Si le FAI ne coopérait pas avec l'entreprise, il utiliserait encore plus Internet. Internet ne pouvait pas gérer tout le trafic. Les fournisseurs devraient ajouter plus de capacité, ce qui est très coûteux.

Maintenant, près de 100% du contenu Netflix est transmis au sein des réseaux des fournisseurs. Cela réduit le coût de la maintenance du réseau, car il n'obstrue pas Internet. Dans le même temps, les abonnés Netflix reçoivent une vidéo de haute qualité et les performances du réseau s'améliorent pour tout le monde. Tout le monde y gagne.

Open Connect Fiable et résilient


Nous avons déjà expliqué comment Netflix augmente la fiabilité du système en travaillant dans trois régions AWS. L'architecture Open Connect atteint les mêmes objectifs. Cela peut ne pas être évident, mais les OCA sont indépendants les uns des autres. Les OCA fonctionnent comme des archipels de diffusion vidéo autonomes. Les abonnés qui reçoivent des vidéos d'un OSA ne souffrent pas des défaillances d'autres OSA.

Que se passe-t-il lorsque l'OSA échoue? Le programme client que vous utilisez bascule instantanément vers un autre OSA et reprend son affichage. Que se passe-t-il si trop de personnes utilisent l'OCA au même endroit? Le programme client trouve un OSA moins chargé. Que se passe-t-il si le réseau utilisé pour transmettre la vidéo est surchargé? La même chose - le programme trouve un autre OSA sur le réseau qui fonctionne mieux. Open Connect est un système très fiable et tolérant aux pannes.

Netflix contrôle le client


Netflix gère intelligemment les échecs car il contrôle le client sur tous les appareils. La société développe elle-même des applications pour Android et iOS, nous pouvons donc nous attendre à ce qu'elles les contrôlent. Mais même sur des plates-formes telles que Smart TV, où Netflix n'a pas créé de clients, il le contrôle toujours car il contrôle le package de développement d'applications (SDK).

Les SDK sont un ensemble de programmes de développement qui vous permettent de créer des applications. Chaque application Netflix effectue des demandes AWS et lit la vidéo à l'aide du SDK. En contrôlant le SDK, Netflix peut s'adapter constamment et en temps réel aux réseaux lents, aux erreurs OSA et à d'autres problèmes possibles.

Et enfin: c'est ce qui se passe lorsque vous cliquez sur "jouer"

Nous avons fait beaucoup de chemin vers cela et nous avons beaucoup appris. Voici ce que nous savons en ce moment:

  • Netflix peut être divisé en trois parties: backend, client et CDN.
  • Toutes les demandes des clients sont traitées par AWS.
  • Toutes les vidéos sont transférées de l'appareil Open Connect (OCA) le plus proche vers le CDN.
  • Netflix fonctionne avec trois régions AWS et peut généralement faire face à une défaillance dans n'importe quelle région afin que personne ne s'en rende compte.
  • Le nouveau contenu est converti dans l'entreprise dans de nombreux formats différents, de sorte que vous pouvez choisir l'option la plus appropriée en fonction du type d'appareil, de la qualité du réseau, de l'emplacement géographique et du tarif d'abonné.
  • Chaque jour, sur Open Connect, la société distribue des vidéos dans le monde entier sans prédire ce que les abonnés voudront regarder dans différentes parties du monde.

Voici l'image que Netflix décrit en utilisant le processus de lecture:



Finissons-le:

  • Vous sélectionnez une vidéo à regarder à l'aide d'un client exécuté sur un appareil. Le client envoie une demande de lecture, indiquant la vidéo dont vous avez besoin, au service Playback Apps alimenté par AWS.
  • Nous n'avons pas discuté de cela auparavant, mais la plupart de ce qui se passe lorsque vous cliquez sur «jouer» est lié aux licences. Toutes les parties du monde n'ont pas de licence pour visionner chaque vidéo. Netflix devrait déterminer si vous avez une licence pour regarder une vidéo spécifique. Nous ne discuterons pas de ce sujet ennuyeux, mais gardez à l'esprit que cela se produit tout le temps. L'une des raisons pour lesquelles Netflix a commencé à créer son propre contenu était une tentative d'éviter les problèmes de licence [et il y a toujours des situations absurdes lorsque la société ne peut pas montrer la série de production Netflix parce qu'elle en a vendu les droits à un fournisseur de contenu local - sans oublier tous les territoires interdits au travail des entreprises américaines // env. trad.]. Netflix veut publier des émissions pour toutes les personnes à travers le monde en même temps. La création de votre propre contenu est le moyen le plus simple d'éviter les problèmes de licence.
  • Compte tenu de toutes les informations pertinentes, le service Playback Apps renvoie l'URL à plusieurs, jusqu'à dix, serveurs OSA. Ce sont les mêmes URL que vous pouvez voir dans votre navigateur. Netflix utilise votre adresse IP et les informations de votre fournisseur pour déterminer les clusters OSA qui vous conviennent le mieux.
  • Le client analyse la situation et sélectionne l'OCA. Il vérifie la qualité de la connexion avec chacun d'eux. Il se connectera à l'OSE le plus rapide et le plus fiable. Le client effectue constamment ces vérifications pendant la lecture vidéo.
  • Le client essaie de choisir la meilleure façon de recevoir du contenu de l'OSA.
  • Le client se connecte à l'OSA et commence la sortie du flux vidéo sur votre appareil.
  • Lorsque vous regardez une vidéo, avez-vous remarqué que la qualité d'image change? Parfois, il y aura des pixels et après un certain temps, l'image redeviendra de haute qualité? En effet, le client s'adapte à la qualité du réseau. Si la qualité baisse, le client réduit en conséquence la qualité de la vidéo. Si la qualité baisse trop, le client passera à un autre OSA.

C'est ce qui se passe lorsque vous cliquez sur "jouer" sur Netflix. Qui aurait pensé qu'une chose aussi simple, comme regarder une vidéo, pouvait être si compliquée?

Source: https://habr.com/ru/post/fr409583/


All Articles