Chmura obliczeniowa - Netflix opracowuje zupełnie nową platformę kodowania

Dostawca usług strumieniowych Netflix przechowuje swoje filmy w celu zapewnienia optymalnej dostawy przy różnych prędkościach Internetu i na różnych urządzeniach odtwarzających w różnych Rozdzielczość, poziomy jakości i formaty. Przez około siedem lat zajmowałem się kodowaniem platformy "Reloaded". W międzyczasie jednak obciążenie Netflixa wzrosło dziesięciokrotnie dzięki ekspansji na kolejne rynki i znacznie większej ilości treści. Według bloga inżynierów Netflixa, spowodowało to problemy. Odpowiedzialni za to programiści opracowali więc nową platformę kodowania o nazwie "Kosmos" stworzone.

Jak wyjaśnia Frank San Miguel w imieniu zespołu Cosmos, stara architektura Reloaded została zaprojektowana wyłącznie do skalowania treści audio i wideo tak dobrze, jak to tylko możliwe. Jednak monolityczna architektura znacznie utrudniała wprowadzanie nowych funkcji. Ponadto, zespół odpowiedzialny za kodowanie znacznie się powiększył w ciągu ostatnich kilku lat, co oznaczało, że zwłaszcza nowi członkowie nie mieli praktycznie żadnego wglądu w przestarzałą architekturę Reloaded. Odpowiedzialne za to było przede wszystkim połączenie logiki aplikacji z kodem infrastruktury.

Architektura mikroserwisów jako wzór do naśladowania

Aufgrund der großen Probleme hat sich das Team für eine vollständige Neuentwicklung statt einer Überarbeitung der vorhandenen Architektur entschieden. Als Vorbild wurde dabei die moderne Microservices-Architektur gewählt. Dies ermöglicht neben den eigentlichen Encoding-Aufgaben das modulare Hinzufügen weiterer Dienste, darunter ein Tool zum Monitoring und Werkzeuge für die Continuous-Delivery-Pipeline. Diese soll ermöglichen, dass unmittelbar in der Produktionsumgebung neue Code-Beiträge ohne zusätzliche Eingriffe eingespielt werden können.

Pomimo podobieństw, usługi Cosmos nie są mikroserwisami. Dane aplikacji i jej zależności są również odseparowane od innych systemów w narzędziu kodującym Netflix, podobnie jak w mikroserwisach, ale usługi wykorzystują jasno zdefiniowane API do wymiany danych.

Die neben dem Encoding anfallenden, sehr rechenintensiven Arbeiten laden ihre Abhängigkeiten als Docker-Container. Je nach Größe der Aufgabe sind dies bei Netflix mehrere Tausend verschiedene Container, die in einer Cloud Computing Umgebung arbeiten. Ein Durchlauf dauert bei besonders großen Dateien laut den Entwickler oft mehrere Tage.

Prace rozwojowe nad Cosmosem rozpoczęły się w 2018 r., a wstępne testy w środowisku produktowym w 2019 r. Właściwy rollout systemu, który następnie całkowicie zastąpi platformę kodowania Reloaded, nastąpi w bieżącym roku 2021.

Prosimy o podzielenie wkładu
Udział w !trpst#/trp-gettext>
Udział w !trpst#/trp-gettext>
Udział w !trpst#/trp-gettext>
Udział w !trpst#/trp-gettext>
Udział w !trpst#/trp-gettext>
Udział w !trpst#/trp-gettext>
Najnowsze stanowiska

Polecane filmy z naszego kanału Youtube Channel