Računalništvo v oblaku - Netflix razvija popolnoma novo platformo za kodiranje

Ponudnik pretočnega videa Netflix shranjuje svoje videoposnetke za optimalno predvajanje pri različnih internetnih hitrostih in napravah za predvajanje v različnih Ločljivosti, ravni kakovosti in formati. Približno sedem let je razvijal kodiranje platforme "Reloaded". Medtem se je Netflixova obremenitev zaradi širitve na več trgov in bistveno več vsebine povečala za desetkrat. Po navedbah Netflixovega inženirskega bloga je to povzročilo težave. Odgovorni razvijalci so zato razvili novo platformo za kodiranje, imenovano "Cosmos" ustvarjen.

Kot v imenu ekipe Cosmos pojasnjuje Frank San Miguel, je bila stara arhitektura programa Reloaded zasnovana izključno za čim boljše skaliranje zvočnih in video vsebin. Vendar je bilo zaradi monolitne arhitekture veliko težje uvajati nove funkcije. Poleg tega se je ekipa, odgovorna za kodiranje, v zadnjih nekaj letih močno povečala, kar je pomenilo, da zlasti novi člani niso imeli skoraj nobenega pregleda nad zastarelo arhitekturo sistema Reloaded. Za to je bila odgovorna predvsem logika aplikacije z infrastrukturno kodo.

Arhitekture mikrostoritev kot vzorčni model

Zaradi velikih težav se je ekipa odločila za popolnoma nov razvoj namesto za revizijo obstoječe arhitekture. Kot model je bila izbrana sodobna arhitektura mikrostoritev. Poleg dejanskih nalog kodiranja to omogoča modularno dodajanje dodatnih storitev, vključno z orodjem za spremljanje in orodji za neprekinjeno dostavo. To naj bi omogočilo razvoj nove kode neposredno v produkcijskem okolju.Prispevki se lahko uvozi brez dodatnega posega.

Kljub podobnosti pa storitve Cosmos niso mikrostoritve. Podatki aplikacije in njene odvisnosti so v kodirnem orodju Netflix prav tako ločeni od drugih sistemov kot pri mikrostoritvah, vendar storitve za izmenjavo podatkov uporabljajo jasno opredeljene API-je.

Zelo računsko intenzivno delo, ki poteka ob kodiranju, naloži svoje odvisnosti kot vsebnike Docker. Odvisno od velikosti naloge je pri Netflixu to več tisoč različnih vsebnikov, ki so shranjeni v računalništvo v oblaku okolje. Razvijalci navajajo, da za posebej velike datoteke pogosto traja več dni.

Razvoj sistema Cosmos se je začel leta 2018, prvi testi v okolju izdelka pa so se začeli leta 2019. Dejanska uvedba sistema, ki bo nato v celoti nadomestil kodirno platformo Reloaded, bo potekala v tekočem letu 2021.

Aktualni članki