Turinio keliai yra neįskaitomi arba pakalbėkime apie CDN

Turinio keliai yra neįskaitomi arba pakalbėkime apie CDN

Atsakomybės apribojimas:
Šiame straipsnyje nėra informacijos, kuri anksčiau nebuvo žinoma skaitytojams, susipažinusiems su CDN sąvoka, tačiau jis yra technologijų apžvalgos pobūdis.

Pirmasis tinklalapis pasirodė 1990 m. ir buvo vos kelių baitų dydžio. Nuo to laiko turinys keitėsi tiek kokybiškai, tiek kiekybiškai. IT ekosistemos plėtra lėmė tai, kad šiuolaikiniai tinklalapiai matuojami megabaitais, o tinklo pralaidumo didėjimo tendencija kasmet tik stiprėja. Kaip turinio teikėjai gali aprėpti didelius geografinius mastus ir suteikti vartotojams visur greitą prieigą prie informacijos? Turinio pristatymo ir platinimo tinklai, taip pat žinomi kaip turinio pristatymo tinklas arba tiesiog CDN, turi susidoroti su šiomis užduotimis.

Internete atsiranda vis daugiau „sunkaus“ ​​turinio. Tuo pačiu metu daugybė tyrimų rodo, kad vartotojai nenori naudotis interneto paslaugomis, jei jos įkeliamos ilgiau nei 4–5 sekundes. Per mažas svetainės įkėlimo greitis praranda auditoriją, o tai neabejotinai sumažės srautas, konversijos, taigi ir pelnas. Turinio pristatymo tinklai (CDN) teoriškai pašalina šias problemas ir jų pasekmes. Tačiau iš tikrųjų, kaip įprasta, viską lemia konkretaus atvejo detalės ir niuansai, kurių šioje srityje apstu.

Iš kur kilo paskirstytų tinklų idėja?

Pradėkime nuo trumpos ekskursijos į istoriją ir terminų apibrėžimus. CDN yra serverių įrenginių, esančių skirtingose ​​vietose, tinklas, suteikiantis prieigą prie interneto turinio, apimančio didelį vartotojų skaičių. Paskirstytų tinklų idėja yra turėti kelis buvimo taškus (PoP) vienu metu, kurie yra už šaltinio serverio ribų. Tokia sistema greičiau apdoros gaunamų užklausų masyvą, padidindama atsaką ir bet kokių duomenų perdavimo greitį.

Problema, susijusi su turinio pateikimu vartotojams, opiai iškilo interneto vystymosi viršūnėje, t.y. 90-ųjų viduryje. To meto serveriai, kurių našumas nepasiekė net šiuolaikinių flagmanų nešiojamų kompiuterių, sunkiai atlaikė apkrovą ir nesusitvarkė su vis didėjančiu srautu. „Microsoft“ kasmet išleisdavo šimtus milijonų dolerių tyrimams, susijusiems su informacijos greitkeliu (iš karto iškyla garsieji Billo Gateso 640 KB). Norėdami išspręsti šias problemas, turėjome naudoti hierarchinę talpyklą, pereiti nuo modemų prie optinio pluošto ir išsamiai išanalizuoti tinklo topologiją. Situacija priminė seną lokomotyvą, kuris veržiasi palei bėgius ir pakeliui visomis įmanomomis priemonėmis modernizuojamas greičiui didinti.

Jau 90-ųjų pabaigoje interneto portalų savininkai suprato, kad norint sumažinti apkrovą ir pateikti reikiamas užklausas, reikia naudoti tarpinius serverius. Taip atsirado pirmieji CDN, platinantys statinį turinį iš skirtingų serverių, geografiškai išsibarsčiusių visame pasaulyje. Maždaug tuo pačiu metu atsirado paskirstytų tinklų verslas. Didžiausias (bent vienas didžiausių) CDN tiekėjas pasaulyje Akamai tapo šios srities pionieriumi, savo kelionę pradėjęs 1998 m. Po poros metų CDN išplito, o pajamos iš turinio pristatymo ir įnašo siekė dešimtis milijonų dolerių per mėnesį.

Šiandien mes susiduriame su CDN kiekvieną kartą, kai einame į didelio srauto komercinį puslapį ar bendraujame socialiniuose tinkluose. Paslaugą teikia: „Amazon“, „Cloudflare“, „Akamai“, taip pat daugelis kitų tarptautinių tiekėjų. Be to, didelės įmonės linkusios naudoti savo CDN, o tai joms suteikia daug pranašumų, susijusių su turinio pristatymo greičiu ir kokybe. Jei „Facebook“ neturėtų paskirstytų tinklų, o tenkintųsi tik pradiniu serveriu, esančiu Jungtinėse Valstijose, Rytų Europos vartotojų profilio įkėlimas gali užtrukti žymiai ilgiau.

Keletas žodžių apie CDN ir srautinį perdavimą

„FutureSource Consulting“ išanalizavo muzikos industriją ir padarė išvadą, kad 2023 metais muzikos srautinio perdavimo paslaugų prenumeratų skaičius pasieks beveik pusę milijardo žmonių. Be to, paslaugos gaus daugiau nei 90% pajamų iš garso srautinio perdavimo. Panaši situacija ir su vaizdo įrašais, tokie terminai kaip „žaiskime“, „koncertas internetu“ ir „online kinas“ jau įsitvirtino populiariojoje leksike. „Apple“, „Google“, „YouTube“ ir daugelis kitų įmonių turi savo srautinio perdavimo paslaugas.

Iš pradžių CDN buvo naudojamas statinio turinio svetainėms. Statinė – tai informacija, kuri nekinta priklausomai nuo vartotojo veiksmų, laiko ir kitų faktorių, t.y. nėra suasmenintas. Tačiau srautinio vaizdo ir garso paslaugų atsiradimas pridėjo dar vieną įprastą paskirstytų tinklų naudojimo atvejį. Tarpiniai serveriai, esantys netoli tikslinės auditorijos visame pasaulyje, leidžia užtikrinti stabilią prieigą prie turinio didžiausios apkrovos laikotarpiais, pašalinant interneto kliūčių trūkumą.

Kaip tai veikia

Visų CDN esmė yra maždaug ta pati: naudokite tarpininkus, kad galėtumėte greičiau pristatyti turinį galutiniam vartotojui. Tai veikia taip: vartotojas siunčia prašymą atsisiųsti failą, jį gauna CDN serveris, kuris vieną kartą paskambina pirminiam serveriui ir pateikia turinį vartotojui. Tuo pačiu metu CDN talpykloje saugo failus tam tikrą laikotarpį ir apdoroja visas paskesnes užklausas iš savo talpyklos. Pasirinktinai jie taip pat gali iš anksto įkelti failus iš šaltinio serverio, koreguoti talpyklos saugojimo laikotarpį, suspausti sunkius failus ir dar daugiau. Idealiausioje situacijoje pagrindinis kompiuteris perduoda visą srautą CDN mazgui, kuris jau naudoja savo išteklius, kad pateiktų turinį vartotojams. Savaime suprantama, kad efektyvus informacijos kaupimas talpykloje, taip pat užklausų paskirstymas ne į vieną serverį, o į tinklą, lems labiau subalansuotą srauto apkrovą.

Turinio keliai yra neįskaitomi arba pakalbėkime apie CDN
Antras svarbus CDN veikimo bruožas yra duomenų perdavimo vėlavimų (taip pat žinomo kaip RTT – kelionės į abi puses laikas) sumažinimas. TCP ryšio užmezgimas, medijos turinio, JS failo atsisiuntimas, TLS seanso paleidimas – visa tai priklauso nuo ping. Akivaizdu, kad kuo arčiau šaltinio, tuo greičiau galite gauti atsakymą iš jo. Juk net ir šviesos greitis turi savo ribą: apie 200 tūkst. km/s per šviesolaidį. Tai reiškia, kad nuo Maskvos iki Vašingtono RTT vėlavimas bus apie 75 ms, ir tai be tarpinės įrangos įtakos.

Norėdami geriau suprasti, kokias problemas sprendžia turinio platinimo tinklai, pateikiamas dabartinių sprendimų sąrašas:

  • Google, Yandex, MaxCDN (naudokite nemokamus CDN JS bibliotekoms platinti, turi daugiau nei 90 buvimo vietų daugumoje pasaulio šalių);
  • Cloudinary, Cloudimage, Google (kliento optimizavimo paslaugos ir bibliotekos: vaizdai, vaizdo įrašai, šriftai ir kt.);
  • Jetpack, Incapsula, Swarmify ir kt. (resursų optimizavimas turinio valdymo sistemose: bitrix, wordpress ir kt.);
  • CDNVideo, StackPath, NGENIX, Megafon (CDN statiniam turiniui platinti, naudojamas kaip bendrosios paskirties tinklai);
  • Imperva, Cloudflare (sprendimai, pagreitinantys svetainės įkėlimą).

Pirmieji 3 CDN tipai iš sąrašo yra skirti perduoti tik dalį srauto iš pagrindinio serverio. Likę 2 naudojami kaip visaverčiai tarpiniai serveriai su visišku kanalų perdavimu iš šaltinio pagrindinio kompiuterio.

Kam ir kokią naudą teikia technologija?

Teoriškai bet kuri svetainė, parduodanti savo produktus / paslaugas verslo klientams ar asmenims (B2B arba B2C), gali gauti naudos įdiegusi CDN. Svarbu, kad jos tikslinė auditorija, t.y. vartotojų bazė buvo už jų geografinės vietos ribų. Tačiau net jei taip nėra, platinimo tinklai padės subalansuoti didelės apimties turinio apkrovą.

Ne paslaptis, kad serverio kanalui užkimšti užtenka poros tūkstančių gijų. Todėl platinant vaizdo transliacijas plačiajai visuomenei neišvengiamai susiformuos kliūtis – interneto kanalo pralaidumas. Tą patį matome, kai svetainėje yra daug mažų, nesusiūtų vaizdų (pvz., produktų peržiūros). Pradinis serveris naudoja vieną TCP ryšį, kai apdoroja bet kokį užklausų skaičių, todėl atsisiuntimas bus įtrauktas į eilę. Pridėjus CDN, užklausas reikia paskirstyti keliuose domenuose ir naudoti kelis TCP ryšius, taip sumažinant kanalo apkrovą. O atgalinio kelio uždelsimo formulė net ir liūdniausiais scenarijais suteikia 6-7 RRT reikšmę ir įgauna formą: TCP+TLS+DNS. Tai taip pat apima vėlavimus, susijusius su radijo kanalo aktyvavimu įrenginyje ir signalo perdavimu į mobiliojo ryšio bokštus.

Apibendrinę internetinio verslo technologijų pranašumus, ekspertai pabrėžia šiuos dalykus:

  1. Greitas infrastruktūros mastelio keitimas + sumažintas pralaidumas. Daugiau serverių = daugiau taškų, kuriuose saugoma informacija. Dėl to vienas taškas apdoroja mažiau srauto per laiko vienetą, o tai reiškia, kad jo pralaidumas gali būti mažesnis. Be to, naudojami optimizavimo įrankiai, leidžiantys susidoroti su didžiausiomis apkrovomis negaišdami laiko.
  2. Apatinis ping. Jau minėjome, kad žmonės nemėgsta ilgai laukti internete. Todėl didelis ping padidina atmetimo rodiklius. Vėlavimą gali lemti problemų, susijusių su duomenų apdorojimu serveryje, senos įrangos naudojimu ar tiesiog blogai apgalvota tinklo topologija. Daugumą šių problemų iš dalies išsprendžia turinio platinimo tinklai. Nors čia svarbu pažymėti, kad tikroji technologijos diegimo nauda bus matoma tik tada, kai „vartotojo ping“ viršys 80-90 ms, o tai yra atstumas nuo Maskvos iki Niujorko.

    Turinio keliai yra neįskaitomi arba pakalbėkime apie CDN

  3. Duomenų saugumas. DDos (Denial of Service virusų atakos) yra skirtos serverio gedimui, siekiant gauti tam tikros naudos. Vienas serveris yra daug jautresnis informacijos saugumo pažeidžiamumui nei paskirstytasis tinklas (diegti tokio milžino kaip „CloudFlare“ infrastruktūrą nėra lengva užduotis). Dėl filtrų naudojimo ir tinkamo užklausų paskirstymo tinkle galite lengvai išvengti dirbtinai sukurtų sunkumų, susijusių su prieiga prie teisėto srauto.
  4. Greitas turinio platinimas ir papildomos paslaugų funkcijos. Didelio kiekio informacijos paskirstymas serverių tinkle leis greitai perteikti pasiūlymą galutiniam vartotojui. Vėlgi, jums nereikia toli ieškoti pavyzdžių – tiesiog prisiminkite „Amazon“ ir „AliExpress“.
  5. Galimybė „užmaskuoti“ pagrindinės svetainės problemas. Nereikia laukti, kol DNS bus atnaujintas, galite perkelti jį į naują vietą ir platinti anksčiau talpykloje saugomą turinį. Tai savo ruožtu gali pagerinti atsparumą gedimams.

Mes išsiaiškinome privalumus. Dabar pažiūrėkime, kurioms nišoms tai naudinga.

Reklamos verslas

Reklama yra progreso variklis. Kad variklis neperdegtų, jį reikia apkrauti saikingai. Taigi reklamos verslas, bandantis susidoroti su šiuolaikiniu skaitmeniniu pasauliu, susiduria su „sunkaus turinio“ problemomis. Sunkioji laikmena reiškia daugialypės terpės reklamą (daugiausia animuotus reklamjuosčius ir vaizdo įrašus), kuriai reikalingas didelis tinklo pralaidumas. Svetainė su daugialypės terpės įkėlimu užtrunka ilgai ir gali užšalti, todėl tikrinamas vartotojų nervų stiprumas. Dauguma žmonių atsisako tokių išteklių net neatsisiųsdami visos turimos informacijos. Reklamos įmonės gali pasinaudoti CDN, kad išspręstų šias problemas.

Pardavimai

Elektroninė prekyba turi nuolat plėsti savo geografinę aprėptį. Kitas svarbus momentas – kova su konkurentais, kurių apstu kiekviename rinkos segmente. Jei svetainė neatitiks vartotojo reikalavimų (įskaitant ir ilgai kraunasi), ji nebus populiari ir nesugebės atnešti nuolat aukštų konversijų. CDN įdiegimas turėtų įrodyti savo pranašumą tvarkant duomenų užklausas iš skirtingų vietų. Be to, srauto paskirstymas padės išvengti srauto šuolių ir vėlesnių serverio gedimų.

Platformos su pramoginiu turiniu

Čia tinka visokios pramogų platformos – nuo ​​filmų ir žaidimų atsisiuntimo iki vaizdo įrašų transliacijos. Nepaisant to, kad technologija veikia su statiniais duomenimis, srautiniai duomenys gali greičiau pasiekti vartotoją per kartotuvus. Vėlgi, CDN informacijos kaupimas talpykloje yra išsigelbėjimas didelių portalų savininkams – multimedijos saugykla.

Internetiniai žaidimai

Internetiniai žaidimai turi būti patalpinti atskirame skyriuje. Jei reklamai reikalingas didelis pralaidumas, internetiniai projektai reikalauja dar daugiau išteklių. Teikėjai susiduria su problema, kuri turi dvi puses: prieigos prie serverių greitis + aukšto žaidimų našumo užtikrinimas su gražia grafika. Internetinių žaidimų CDN yra galimybė turėti vadinamąsias „push zonas“, kuriose kūrėjai gali saugoti žaidimus serveriuose, esančiuose arti vartotojų. Tai leidžia sumažinti prieigos prie pradinio serverio greičio poveikį ir užtikrinti patogų žaidimą visur.

Kodėl CDN nėra panacėja

Turinio keliai yra neįskaitomi arba pakalbėkime apie CDN
Nepaisant akivaizdžių pranašumų, ne visi ir ne visada stengiasi įdiegti technologijas į savo verslą. Kodėl taip? Paradoksalu, tačiau iš privalumų kyla tam tikrų trūkumų, be to, pridedama dar keletas punktų, susijusių su tinklo diegimu. Rinkodaros specialistai gražiai pasakos apie visus technologijų privalumus, pamiršdami paminėti, kad jie visi netenka prasmės įvairiausiomis sąlygomis. Jei pažvelgsime į CDN trūkumus išsamiau, verta pabrėžti:

  • Dirbkite tik su statika. Taip, daugumoje šiuolaikinių svetainių dinaminio turinio procentas yra mažas. Bet kai puslapiai yra suasmeninti, CDN negalės padėti (išskyrus galbūt iškrauti didelį srautą);
  • Talpyklos vėlavimas. Pats optimizavimas yra vienas iš pagrindinių paskirstymo tinklų privalumų. Tačiau kai atliekate pakeitimą pradiniame serveryje, užtrunka šiek tiek laiko, kol CDN jį iš naujo atkuria visuose savo serveriuose;
  • Masiniai blokavimai. Jei dėl kokių nors priežasčių CDN IP adresas yra uždraustas, visos jame esančios svetainės uždaromos;
  • Daugeliu atvejų naršyklė užmegs du ryšius (prie pradinio serverio ir CDN). Ir tai yra papildomos laukimo milisekundės;
  • Pririšimas prie projektų (įskaitant ir neegzistuojančius), kurie anksčiau buvo jam priskirti, IP adreso. Dėl to gauname sudėtingus reitingus iš Google paieškos robotų ir sunkumų iškeliant svetainę į viršų SEO reklamavimo metu;
  • CDN mazgas yra galimas gedimo taškas. Jei juos naudojate, svarbu iš anksto suprasti, kaip veikia sistemos maršruto parinkimas ir kokios klaidos gali atsirasti dirbant su svetaine;
  • Tai banalu, bet už turinio pristatymo paslaugas reikia mokėti. Apskritai, išlaidos yra proporcingos srautui, o tai reiškia, kad planuojant biudžetą gali prireikti kontrolės.

Svarbus faktas: net CDN artumas vartotojui negarantuoja žemo ping. Maršrutas gali būti nutiestas nuo kliento iki šeimininko, esančio kitoje šalyje ar net kitame žemyne. Tai priklauso nuo konkretaus tinklo maršruto parinkimo politikos ir jo santykių su telekomunikacijų operatoriais (peering). Daugelis didelių CDN teikėjų turi kelis planus, kuriuose kaina tiesiogiai įtakoja buvimo vietos artumą, kai tiekiamas turinys tiksliniams vartotojams.

Yra galimybių – paleiskite savo CDN

Ar esate nepatenkinti turinio platinimo tinklo paslaugas teikiančių įmonių politika, tačiau jūsų verslui reikia plėstis? Jei įmanoma, kodėl gi nepabandžius paleisti savo CDN. Tai prasminga šiais atvejais:

  • Dabartinės išlaidos turinio platinimui neatitinka lūkesčių ir nėra ekonomiškai pagrįstos;
  • Mums reikia nuolatinės talpyklos be artumo prie kitų serverio ir kanalo svetainių;
  • Tikslinė auditorija yra regione, kuriame nėra jums prieinamų CDN taškų;
  • Poreikis individualizuoti nustatymus pateikiant turinį;
  • Reikia paspartinti dinamiško turinio pateikimą;
  • Įtarimai dėl vartotojo privatumo pažeidimo ir kitų neteisėtų trečiųjų šalių paslaugų veiksmų.

Norėdami paleisti CDN, turėsite turėti domeno pavadinimą, kelis serverius skirtinguose regionuose (virtualiuosius arba dedikuotus) ir užklausų apdorojimo įrankį. Nepamirškite įdiegti SLL sertifikatų, nustatyti ir redaguoti statinio turinio aptarnavimo programas (Nginx arba Apache) ir efektyviai stebėti visą sistemą.

Teisinga talpyklos tarpinių serverių konfigūracija yra atskiro straipsnio tema, todėl čia išsamiai neaprašysime: kur ir kokį parametrą nustatyti teisingai. Atsižvelgiant į paleidimo išlaidas ir tinklo diegimo laiką, gali būti perspektyviau naudoti paruoštus sprendimus. Tačiau reikia vadovautis esama situacija ir planuoti kelis žingsnius į priekį.

Todėl

CDN yra papildomų pajėgumų rinkinys, skirtas srautui perduoti masėms. Ar jie reikalingi internetiniam verslui? Taip ir ne, viskas priklauso nuo to, kokiai auditorijai skirtas turinys ir kokių tikslų siekia įmonės savininkas.

Regioniniai ir labai specializuoti projektai, įgyvendinus CDN, gaus daugiau trūkumų nei privalumų. Užklausos vis tiek pirmiausia bus pateiktos šaltinio serveriui, bet per tarpininką. Taigi abejotinas ping sumažinimas, bet gana neabejotinas mėnesinis mokestis už naudojimąsi paslauga. Jei turite gerą tinklo įrangą, galite nesunkiai patobulinti esamus informacijos saugos algoritmus, patalpinti savo serverius arčiau vartotojų ir nuolat gauti optimizavimą bei pelną nemokamai.

Tačiau apie tarpinius serverius turėtų galvoti didelės įmonės, kurių infrastruktūra negali susidoroti su nuolat augančiu srauto srautu. CDN puikiai parodo save kaip technologiją, leidžiančią greitai įdiegti tinklą į plačią vartotojų geografiją, užtikrinti patogų žaidimą debesyje ar parduoti prekes didelėje komercinėje platformoje.

Tačiau net ir turint didelę geografinę auditoriją, svarbu iš anksto suprasti, kam reikalingi turinio platinimo tinklai. Svetainės spartinimas vis dar yra sudėtinga užduotis, kurios nepavyks stebuklingai išspręsti įdiegus CDN. Nepamirškite apie tokias svarbias funkcijas kaip: kelių platformų, prisitaikymo, serverio dalies optimizavimo, kodo, atvaizdavimo ir kt. Preliminarus techninis auditas ir tinkamos problemos šalinimo priemonės vis dar yra optimalus sprendimas bet kuriam internetiniam projektui, nepaisant jo krypties ir masto.

Dėl reklamos teisių

Užsisakyti galite jau dabar galingi serveriaikurie naudoja naujausius procesorius amd epyc. Lankstūs planai – nuo ​​1 procesoriaus branduolio iki beprotiškų 128 procesoriaus branduolių, 512 GB RAM, 4000 GB NVMe.

Turinio keliai yra neįskaitomi arba pakalbėkime apie CDN

Šaltinis: www.habr.com

Добавить комментарий