Tajemné způsoby obsahu nebo řekněme pár slov o CDN

Tajemné způsoby obsahu nebo řekněme pár slov o CDN

Zřeknutí se odpovědnosti:
Tento článek neobsahuje informace dříve neznámé čtenářům obeznámeným s konceptem CDN, ale má povahu technologické recenze

První webová stránka se objevila v roce 1990 a byla velká jen několik bajtů. Od té doby se obsah škáloval jak kvalitativně, tak kvantitativně. Rozvoj IT ekosystému vedl k tomu, že moderní webové stránky se měří v megabajtech a trend zvyšování šířky pásma sítě každým rokem jen sílí. Jak mohou poskytovatelé obsahu pokrýt velká geografická měřítka a poskytnout uživatelům kdekoli vysokorychlostní přístup k informacím? Sítě pro doručování a distribuci obsahu, známé také jako Content Delivery Network nebo jednoduše CDN, se musí s těmito úkoly vyrovnat.

Na internetu je stále více „těžkého“ obsahu. Četné studie zároveň ukazují, že uživatelé nechtějí řešit webové služby, pokud se načítají déle než 4–5 sekund. Příliš nízká rychlost načítání stránek je spojena se ztrátou publika, což jistě povede ke snížení návštěvnosti, konverzí, a tedy i zisku. Sítě pro doručování obsahu (CDN) teoreticky tyto problémy a jejich důsledky eliminují. Ve skutečnosti ale jako obvykle o všem rozhodují detaily a nuance konkrétního případu, kterých je v této oblasti spousta.

Kde se vzala myšlenka distribuovaných sítí?

Začněme krátkým exkurzem do historie a definicemi pojmů. CDN je síť skupiny serverových strojů umístěných na různých místech, které poskytují přístup k internetovému obsahu pokrývajícímu velký počet uživatelů. Myšlenka distribuovaných sítí je mít několik bodů přítomnosti (PoP) najednou, které jsou umístěny mimo zdrojový server. Takový systém zpracuje řadu příchozích požadavků rychleji, zvýší odezvu a rychlost přenosu jakýchkoli dat.

Problém s doručováním obsahu uživatelům akutně vyvstal na vrcholu rozvoje internetu, tzn. v polovině 90. let. Tehdejší servery, jejichž výkon nedosahoval ani moderních vlajkových notebooků, jen stěží odolávaly zátěži a nezvládaly stále se zvyšující provoz. Microsoft utrácel ročně stovky milionů dolarů na výzkum související s informační dálnicí (ihned se mi vybaví slavných 640 KB od Billa Gatese). Abychom tyto problémy vyřešili, museli jsme použít hierarchické ukládání do mezipaměti, přejít z modemů na optická vlákna a podrobně analyzovat topologii sítě. Situace připomínala starou lokomotivu, která se řítí po kolejích a po cestě je všemi možnými prostředky modernizována pro zvýšení rychlosti.

Již koncem 90. let si majitelé webových portálů uvědomili, že ke snížení zátěže a zajištění požadovaných požadavků potřebují využít zprostředkující servery. Tak se objevily první sítě CDN, které distribuovaly statický obsah z různých serverů geograficky rozmístěných po celém světě. Přibližně ve stejné době se objevil obchod založený na distribuovaných sítích. Průkopníkem v této oblasti se stal největší (alespoň jeden z největších) poskytovatel CDN na světě, Akamai, který svou cestu zahájil v roce 1998. O několik let později se CDN rozšířilo a příjmy z poskytování obsahu a příspěvků činily desítky milionů dolarů měsíčně.

Dnes na CDN narazíme pokaždé, když jdeme na vysoce navštěvovanou komerční stránku nebo komunikujeme na sociálních sítích. Službu poskytují: Amazon, Cloudflare, Akamai a mnoho dalších nadnárodních poskytovatelů. Velké společnosti navíc mají tendenci používat vlastní CDN, což jim přináší řadu výhod v rychlosti a kvalitě doručování obsahu. Pokud by Facebook neměl distribuované sítě, ale spokojil se pouze s původním serverem umístěným ve Spojených státech, mohlo by načítání profilu pro uživatele ve východní Evropě trvat podstatně déle.

Pár slov o CDN a streamování

Společnost FutureSource Consulting analyzovala hudební průmysl a dospěla k závěru, že v roce 2023 dosáhne počet předplatitelů hudebních streamovacích služeb téměř půl miliardy lidí. Služby navíc získají více než 90 % svých příjmů ze streamování zvuku. Podobná je situace u videa, termíny jako let’s play, online koncert a online kino již v oblíbeném slovníku zakotvily. Apple, Google, YouTube a mnoho dalších společností má své vlastní streamovací služby.

Ve svém raném zavedení byl CDN používán především pro weby se statickým obsahem. Statické jsou informace, které se nemění v závislosti na akcích uživatele, čase a dalších faktorech, tzn. není personalizováno. Ale vzestup streamování video a audio služeb přidal další běžné použití pro distribuované sítě. Zprostředkující servery umístěné v blízkosti cílového publika po celém světě umožňují poskytovat stabilní přístup k obsahu během období špičkového zatížení, čímž eliminují nedostatek internetových úzkých míst.

Jak to funguje

Podstata všech CDN je přibližně stejná: využívat zprostředkovatele, abyste byli schopni rychleji doručit obsah koncovému spotřebiteli. Funguje to následovně: uživatel odešle požadavek na stažení souboru, ten je přijat serverem CDN, který jednorázově zavolá na původní server a předá obsah uživateli. Souběžně s tím CDN ukládá soubory do mezipaměti po danou dobu a zpracovává všechny následné požadavky ze své vlastní mezipaměti. Volitelně mohou také předem načíst soubory ze zdrojového serveru, upravit dobu uchování mezipaměti, komprimovat těžké soubory a mnoho dalšího. V nejideálnější situaci předá hostitel celý stream do CDN uzlu, který již využívá své vlastní zdroje k doručování obsahu uživatelům. Je samozřejmé, že efektivní ukládání informací do mezipaměti, stejně jako distribuce požadavků nikoli na jeden server, ale do sítě, povede k vyváženějšímu zatížení provozu.

Tajemné způsoby obsahu nebo řekněme pár slov o CDN
Druhou důležitou vlastností provozu CDN je snížení zpoždění při přenosu dat (známé také jako RTT - round trip time). Navázání TCP spojení, stažení mediálního obsahu, JS souboru, spuštění TLS relace, to vše závisí na pingu. Je zřejmé, že čím blíže jste ke zdroji, tím rychleji od něj můžete získat odpověď. Ostatně i rychlost světla má svůj limit: asi 200 tisíc km/s přes optické vlákno. To znamená, že z Moskvy do Washingtonu bude zpoždění v RTT asi 75 ms, a to bez vlivu mezizařízení.

Abyste lépe porozuměli tomu, jaké problémy řeší sítě distribuce obsahu, zde je seznam aktuálních řešení:

  • Google, Yandex, MaxCDN (použijte bezplatné CDN k distribuci knihoven JS, mají více než 90 míst přítomnosti ve většině zemí světa);
  • Cloudinary, Cloudimage, Google (služby a knihovny pro optimalizaci klientů: obrázky, videa, písma atd.);
  • Jetpack, Incapsula, Swarmify atd. (optimalizace zdrojů v redakčním systému: bitrix, wordpress atd.);
  • CDNVideo, StackPath, NGENIX, Megafon (CDN pro distribuci statického obsahu, používané jako sítě pro všeobecné použití);
  • Imperva, Cloudflare (řešení pro urychlení načítání webových stránek).

První 3 typy CDN ze seznamu jsou navrženy pro přenos pouze části provozu z hlavního serveru. Zbývající 2 se používají jako plnohodnotné proxy servery s plným přenosem kanálů ze zdrojového hostitele.

Komu a jaké výhody technologie poskytuje?

Teoreticky každá webová stránka, která prodává své produkty/služby firemním klientům nebo jednotlivcům (B2B nebo B2C), může profitovat z implementace CDN. Je důležité, aby jeho cílová skupina, tzn. uživatelská základna byla mimo jejich geografickou polohu. Ale i kdyby tomu tak nebylo, distribuční sítě pomohou s vyrovnáváním zátěže u velkých objemů obsahu.

Není žádným tajemstvím, že k ucpání kanálu serveru stačí několik tisíc vláken. Distribuce video vysílání široké veřejnosti proto nevyhnutelně povede k vytvoření úzkého hrdla – šířky pásma internetového kanálu. Totéž vidíme, když je na webu mnoho malých nesešitých obrázků (například náhledy produktů). Původní server používá jedno TCP spojení při zpracování libovolného počtu požadavků, které zařadí stahování do fronty. Po přidání CDN je nutné distribuovat požadavky mezi více doménami a používat více připojení TCP, čímž se snižuje zatížení kanálu. A vzorec zpoždění zpáteční cesty, dokonce i v nejsmutnějších scénářích, dává hodnotu 6-7 RRT a má podobu: TCP+TLS+DNS. To také zahrnuje zpoždění spojená s aktivací rádiového kanálu na zařízení a přenosem signálu do mobilních věží.

Po shrnutí silných stránek technologií pro online podnikání odborníci zdůrazňují následující body:

  1. Rychlé škálování infrastruktury + snížená šířka pásma. Více serverů = více bodů, kde se ukládají informace. Výsledkem je, že jeden bod zpracovává méně provozu za jednotku času, což znamená, že může mít menší propustnost. Do hry navíc vstupují optimalizační nástroje, které vám umožní vyrovnat se se špičkovým zatížením bez ztráty času.
  2. Méně pingu. Již jsme zmínili, že lidé neradi na internetu dlouho čekají. Proto vysoký ping přispívá k vysoké míře okamžitého opuštění. Zpoždění může být způsobeno problémy se zpracováním dat na serveru, používáním starého zařízení nebo jednoduše špatně promyšlenou topologií sítě. Většinu těchto problémů částečně řeší obsahové distribuční sítě. I když je zde důležité poznamenat, že skutečný přínos implementace technologie bude viditelný pouze tehdy, když „spotřebitelský ping“ překročí 80-90 ms, a to je vzdálenost z Moskvy do New Yorku.

    Tajemné způsoby obsahu nebo řekněme pár slov o CDN

  3. Bezpečnost dat. Útoky viru DDos (Denial of Service) jsou zaměřeny na zhroucení serveru za účelem získání nějaké výhody. Jeden server je mnohem náchylnější k zranitelnosti informační bezpečnosti než distribuovaná síť (instalace infrastruktury takového giganta, jako je CloudFlare, není snadný úkol). Díky použití filtrů a správné distribuci požadavků po síti můžete snadno předejít uměle vytvořeným potížím s přístupem k legitimnímu provozu.
  4. Rychlá distribuce obsahu a doplňkové servisní funkce. Distribuce velkého množství informací na serverovou síť umožní rychle předat nabídku koncovému spotřebiteli. Opět nemusíte hledat příklady daleko – stačí si vzpomenout na Amazon a AliExpress.
  5. Schopnost „maskovat“ problémy s hlavním webem. Není třeba čekat na aktualizaci DNS, můžete jej přenést do nového umístění a distribuovat dříve uložený obsah. To zase může zlepšit odolnost proti chybám.

Seřadili jsme výhody. Nyní se podívejme, které výklenky z toho těží.

Reklamní podnikání

Reklama je motorem pokroku. Aby motor neshořel, musí být zatěžován mírně. Takže reklamní průmysl, který se snaží vyrovnat se s moderním digitálním světem, čelí problémům „těžkého obsahu“. Těžká média jsou multimediální reklama (hlavně animované bannery a videa), která vyžaduje vysokou šířku pásma sítě. Web s multimédii se načítá dlouho a může zamrznout, což testuje sílu nervů uživatelů. Většina lidí takové zdroje opustí ještě předtím, než si stáhli všechny dostupné informace. Reklamní společnosti mohou využít CDN k řešení těchto problémů.

Продажи

E-commerce musí neustále rozšiřovat své geografické pokrytí. Dalším důležitým bodem je boj s konkurenty, kterých je v každém segmentu trhu dostatek. Pokud web nesplňuje požadavky uživatelů (včetně dlouhého načítání), nebude oblíbený a nebude schopen přinášet trvale vysoké konverze. Implementace CDN by měla prokázat svou výhodu při zpracování požadavků na data z různých míst. Distribuce provozu také pomůže zabránit špičkám provozu a následným selháním serveru.

Platformy se zábavním obsahem

Zde se hodí všechny druhy zábavních platforem, od stahování filmů a her až po streamování videí. Navzdory tomu, že technologie pracuje se statickými daty, streamovaná data se mohou dostat k uživateli rychleji prostřednictvím opakovačů. Opět platí, že ukládání informací CDN do mezipaměti je spásou pro majitele velkých portálů – multimediálních úložišť.

Online hry

Internetové hry musí být umístěny v samostatné sekci. Pokud reklama vyžaduje velkou šířku pásma, pak jsou online projekty ještě náročnější na zdroje. Poskytovatelé se potýkají s problémem, který má dvě strany: rychlost přístupu k serverům + zajištění vysokého herního výkonu s krásnou grafikou. CDN pro online hry je příležitostí mít takzvané „push zóny“, kde mohou vývojáři ukládat hry na servery umístěné blízko uživatelů. To vám umožní snížit dopad rychlosti přístupu k původnímu serveru a zajistit tak pohodlné hraní všude.

Proč CDN není všelék

Tajemné způsoby obsahu nebo řekněme pár slov o CDN
Navzdory zjevným výhodám se ne každý a ne vždy snaží zavádět technologie do svého podnikání. proč tomu tak je? Paradoxně z výhod vyplývají některé nevýhody a navíc je přidáno několik dalších bodů souvisejících s nasazením sítě. Marketéři budou krásně hovořit o všech výhodách technologií, přičemž zapomenou zmínit, že všechny v široké škále podmínek ztrácí smysl. Pokud se podíváme na nevýhody CDN podrobněji, stojí za to zdůraznit:

  • Pracujte pouze se statikou. Ano, většina moderních webů má nízké procento dynamického obsahu. Ale tam, kde jsou stránky personalizované, CDN nebude moci pomoci (snad kromě uvolnění velkého množství provozu);
  • Zpoždění ukládání do mezipaměti. Samotná optimalizace je jednou z hlavních výhod distribučních sítí. Ale když provedete změnu na původním serveru, nějakou dobu trvá, než ji CDN znovu načte na všech svých serverech;
  • Hromadné blokování. Pokud je z jakéhokoli důvodu IP adresa CDN zakázána, pak jsou všechny weby, které jsou na ní hostovány, uzavřeny;
  • Ve většině případů prohlížeč vytvoří dvě připojení (k původnímu serveru a CDN). A to jsou další milisekundy čekání;
  • Vazba na IP adresu projektů (včetně neexistujících), které jí byly dříve přiřazeny. V důsledku toho dostáváme komplikované hodnocení od vyhledávacích robotů Google a potíže s uvedením webu na vrchol během propagace SEO;
  • Uzel CDN je potenciálním bodem selhání. Pokud je používáte, je důležité předem pochopit, jak funguje systémové směrování a jaké chyby mohou nastat při práci s webem;
  • Je to banální, ale za služby doručování obsahu musíte platit. Obecně platí, že náklady jsou úměrné objemu provozu, což znamená, že plánování rozpočtu může vyžadovat kontroly.

Důležitý fakt: ani blízkost CDN k uživateli nezaručuje nízký ping. Trasu lze postavit od klienta k hostiteli umístěnému v jiné zemi nebo dokonce na jiném kontinentu. To závisí na směrovací politice konkrétní sítě a jejím vztahu s telekomunikačními operátory (peering). Mnoho velkých poskytovatelů CDN má více plánů, kde náklady přímo ovlivňují blízkost místa přítomnosti při doručování obsahu cílovým uživatelům.

Existují příležitosti – spusťte vlastní CDN

Nejste spokojeni se zásadami společností poskytujících služby distribuční sítě obsahu, ale vaše podnikání potřebuje expandovat? Pokud je to možné, proč nezkusit spustit vlastní CDN. To dává smysl v následujících případech:

  • Současné náklady na distribuci obsahu nesplňují očekávání a nejsou ekonomicky oprávněné;
  • Potřebujeme stálou mezipaměť bez blízkosti jiných míst na serveru a kanálu;
  • Cílové publikum je v regionu, kde nemáte k dispozici žádné body přítomnosti CDN;
  • Potřeba personalizace nastavení při doručování obsahu;
  • Je potřeba urychlit poskytování dynamického obsahu;
  • Podezření z narušení soukromí uživatelů a další protiprávní jednání ze strany služeb třetích stran.

Spuštění CDN bude vyžadovat, abyste měli název domény, několik serverů v různých regionech (virtuálních nebo vyhrazených) a nástroj pro zpracování požadavků. Nezapomeňte na instalaci certifikátů SLL, nastavení a úpravu programů pro obsluhu statického obsahu (Nginx nebo Apache) a efektivní monitorování celého systému.

Správná konfigurace cachovacích proxy je předmětem samostatného článku, takže zde nebudeme podrobně popisovat: kde a jaký parametr správně nastavit. S ohledem na počáteční náklady a čas potřebný k nasazení sítě může být použití hotových řešení slibnější. Je ale potřeba se řídit aktuální situací a plánovat několik kroků dopředu.

S tím výsledkem, že

CDN je sada dodatečných kapacit pro předávání vašeho provozu masám. Jsou potřeba pro online podnikání? Ano i ne, vše záleží na tom, pro jaké publikum je obsah určen a jaké cíle sleduje majitel firmy.

Regionální a vysoce specializované projekty budou mít z implementace CDN více nevýhod než výhod. Požadavky budou stále přicházet jako první na zdrojový server, ale prostřednictvím zprostředkovatele. Proto pochybné snížení pingu, ale celkem jednoznačné měsíční náklady na používání služby. Máte-li dobré síťové vybavení, můžete snadno vylepšit stávající algoritmy zabezpečení informací, umístit své servery blíže uživatelům a průběžně získávat optimalizace a zisky zdarma.

Kdo by však měl o zprostředkujících serverech skutečně přemýšlet, jsou velké společnosti, jejichž infrastruktura se nedokáže vyrovnat s neustále rostoucím tokem provozu. CDN se dokonale ukazuje jako technologie, která vám umožňuje rychle nasadit síť v širokém geografickém prostoru uživatelů, poskytovat pohodlné cloudové hraní nebo prodávat zboží na velké komerční platformě.

Ale i při širokém geografickém publiku je důležité předem pochopit, proč jsou sítě distribuce obsahu potřebné. Akcelerace webových stránek stále zůstává složitým úkolem, který nelze magicky vyřešit implementací CDN. Nezapomeňte na takové důležité funkce, jako jsou: cross-platform, adaptabilita, optimalizace serverové části, kód, vykreslování atd. Předběžný technický audit a adekvátní opatření k odstranění problémů jsou stále optimálním řešením pro jakýkoli online projekt bez ohledu na jeho zaměření a rozsah.

Jako reklama

Objednávat můžete hned teď výkonné serverykteré využívají nejnovější procesory amd epyc. Flexibilní plány – od 1 CPU jádra až po šílených 128 CPU jader, 512 GB RAM, 4000 GB NVMe.

Tajemné způsoby obsahu nebo řekněme pár slov o CDN

Zdroj: www.habr.com

Přidat komentář