Srautinių transliacijų teikėjas "Netflix" saugo savo vaizdo įrašus, kad juos būtų galima optimaliai atkurti skirtingais interneto greičiais ir skirtinguose atkūrimo įrenginiuose. Rezoliucijos, kokybės lygiai ir formatai. Kūrė kodavimo platformą "Reloaded" apie septynerius metus. Tačiau per tą laiką "Netflix" apkrova išaugo dešimteriopai dėl plėtros į daugiau rinkų ir gerokai didesnio turinio. Pasak "Netflix" inžinerijos tinklaraščio, dėl to kilo problemų. Todėl atsakingi kūrėjai sukūrė naują kodavimo platformą, pavadintą "Kosmosas" sukurta.
Kaip "Cosmos" komandos vardu aiškina Frankas San Miguelis, senoji "Reloaded" architektūra buvo sukurta tik garso ir vaizdo turiniui kuo geriau mastelizuoti. Tačiau dėl monolitinės architektūros buvo daug sunkiau diegti naujas funkcijas. Be to, už kodavimą atsakinga komanda per pastaruosius kelerius metus labai išaugo, todėl nauji nariai beveik neturėjo jokio supratimo apie pasenusią "Reloaded" architektūrą. Už tai visų pirma buvo atsakingas taikomosios logikos ir infrastruktūros kodas.
Mikroservisų architektūros kaip pavyzdys
Dėl didelių problemų komanda nusprendė ne peržiūrėti esamą architektūrą, o sukurti visiškai naują. Kaip modelis pasirinkta šiuolaikinė mikroservisų architektūra. Be pačių kodavimo užduočių, tai leidžia moduliniu būdu pridėti papildomų paslaugų, įskaitant stebėsenos ir nuolatinio pristatymo vamzdyno įrankius. Tai turėtų leisti kurti naują kodą tiesiogiai gamybinėje aplinkoje.Įnašai galima importuoti be papildomo įsikišimo.
Nepaisant panašumų, "Cosmos" paslaugos nėra mikroservisai. Programos duomenys ir jų priklausomybės taip pat yra atskirti nuo kitų sistemų "Netflix" kodavimo įrankyje, kaip ir mikroservisuose, tačiau paslaugos naudoja aiškiai apibrėžtas API keistis duomenimis.
Labai daug skaičiavimų reikalaujantis darbas, kuris atliekamas kartu su kodavimu, įkelia jo priklausomybes kaip "Docker" konteinerius. Priklausomai nuo užduoties dydžio, "Netflix" tai yra keli tūkstančiai skirtingų konteinerių, kurie saugomi debesų kompiuterija aplinka. Pasak kūrėjų, ypač didelių failų paleidimas dažnai trunka kelias dienas.
"Cosmos" pradėta kurti 2018 m., o pirmieji bandymai produkto aplinkoje prasidėjo 2019 m. Tikrasis sistemos, kuri vėliau visiškai pakeis kodavimo platformą "Reloaded", diegimas vyks einamaisiais 2021 m.