Průvodci

Co je CDN? Content Delivery Network srozumitelně

CDN (content delivery network) je síť serverů rozložených do mnoha měst, které uchovávají kopie souborů vašeho webu: obrázky, skripty, styly a někdy i celé stránky. Když někdo váš web navštíví, dostane obsah z místa blízko sebe, místo z jednoho vzdáleného serveru. Stránky se tak načítají rychleji, odlehčí se váš vlastní server a web lépe zvládá náhlé špičky návštěvnosti.

Proč na CDN záleží, když stavíte s AI

CDN možná nikdy nenastavíte sami, protože mnoho hostingových platforem staví jednu před váš web automaticky. Jejich účinek ale pocítíte:

  • Rychlost. Rychleji se načítající stránky udrží návštěvníky a jsou jednou z věcí, které vyhledávače hodnotí. Viz jak zrychlit svůj web.
  • „Proč se moje změna nezobrazuje?“ Po publikování aktualizace může chvíli přetrvávat uložená kopie staré verze. Když víte proč, ušetříte si hodně zmatku.
  • Soukromí a správnost. Pokud CDN uloží něco nevhodného, například stránku s údaji jednoho uživatele, uvidí je další návštěvník. Když víte, co se má a nemá ukládat do cache, můžete klást správné otázky.

Každodenní přirovnání

Představte si pekárnu, která prodává chléb po celé zemi z jediné prodejny. Každý zákazník, ať je jakkoli daleko, musí čekat na dovoz z té jediné prodejny, a v rušný den je fronta obrovská.

CDN je jako když se stejný chléb nabízí v místních večerkách po celé zemi. Zákazníci si ho vyzvednou nablízku, rychle, a hlavní pekárna musí večerky jen občas doplnit. Háček je v tom, že když pekárna změní recept, večerky prodávají staré bochníky, dokud nedostanou pokyn je vyměnit nebo dokud staré zásoby nevyprší.

Jak CDN funguje

  1. Váš origin. Váš web žije na hlavním serveru nebo v hostingové platformě, které se říká origin.
  2. Edge lokality. CDN provozuje servery na mnoha místech, nazývaných edge lokality nebo points of presence.
  3. Směrování. Když návštěvník požádá o váš web, DNS nebo síťové směrování ho pošle na nejbližší edge. Viz jak fungují domény a DNS.
  4. Cache hit. Pokud má tento edge čerstvou kopii souboru, odešle ji hned.
  5. Cache miss. Pokud ne, edge soubor načte z vašeho originu, pošle ho návštěvníkovi a uloží si kopii pro dalšího.
  6. Expirace. Každá kopie se uchovává po nastavenou dobu, řízenou hlavičkami cache, které posílá váš server, nebo dokud se nevymaže.

Příklad: portfolio fotografa

Portfolio fotografa má domovskou stránku, galerii se 60 velkými obrázky a kontaktní formulář. Origin je v Evropě. Návštěvník ze Singapuru otevře galerii.

  • Bez CDN: každý obrázek putuje z Evropy. Každý požadavek absolvuje cestu přes půl světa, takže se galerie plní pomalu.
  • S CDN: první návštěvník poblíž Singapuru způsobí, že edge tam obrázky načte a uloží. Každý další návštěvník v daném regionu je dostane z blízka, mnohem rychleji.

Teď fotograf vymění hlavní fotku na domovské stránce a znovu publikuje. O tom, zda ji návštěvníci uvidí, rozhodne toto:

/index.html                    → krátká doba cache, kontroluje se často
/assets/index-3f9a2c.js        → dlouho uloženo v cache
/assets/hero-8b41d0.jpg        → dlouho uloženo v cache

Moderní nástroje pro sestavení, včetně Vite, dávají souborům hashované názvy, například hero-8b41d0.jpg. Když se soubor změní, změní se i jeho název, takže stránka žádá zcela nový soubor, který žádná cache dosud neviděla. Samotná HTML stránka se ukládá jen krátce, takže brzy ukáže návštěvníkům na nové soubory. Tak se standardně dosahuje dlouhého ukládání do cache i čerstvých aktualizací.

Kontaktní formulář je jiný. Jeho odeslání jde na server pokaždé a nikdy se nesmí ukládat do cache.

Co ukládat do cache a co ne

Obvykle ukládat dlouhoObvykle ukládat krátceNeukládat ve sdílené CDN
Obrázky, fonty, videaHTML stránky veřejného webuPřihlášené stránky, dashboardy
JavaScript a CSS s hashovanými názvyVeřejná data API, která se občas měníCokoli s osobními údaji
Ke stažení, co se zřídka měníOdeslání formulářů, platby, každý požadavek POST

Klíčové pojmy

PojemVýznam
OriginVáš hlavní server nebo hosting, kde leží skutečné soubory.
Edge / PoPMísto CDN, které obslouží návštěvníky poblíž.
Cache hit / missEdge měl soubor / musel si ho načíst z originu.
TTLTime to live, jak dlouho se kopie uchovává.
Hlavička Cache-ControlPokyn, který váš server posílá, že něco smí být uloženo do cache a jak dlouho.
Purge / invalidacePokyn CDN, aby okamžitě zahodila uložené kopie.
Cache bustingZměna názvu nebo URL souboru při jeho změně, aby cache načetla nový.
LatenceZpoždění způsobené vzdáleností a síťovými uzly.

Obecněji o cachování v prohlížečích, serverech a databázích viz co je cachování.

Časté omyly

  • „CDN zrychlí všechno.“ Zrychluje doručování souborů. Pomalý databázový dotaz nebo pomalé volání AI na vašem serveru zůstává pomalé.
  • „CDN nahrazuje hosting.“ Sedí před vaším hostingem. Origin stále potřebujete.
  • „Když jsem web aktualizoval, všichni ho vidí okamžitě.“ Staré kopie mohou krátce přetrvávat v CDN i v prohlížečích. Pro kontrolu použijte tvrdé obnovení a používejte hashované názvy souborů.
  • „Cachování je vždy bezpečné.“ Uložení personalizované stránky do sdílené cache je skutečné riziko pro soukromí. Soukromé odpovědi by měly být označeny jako neukládatelné.
  • „CDN jsou jen pro velké firmy.“ Mnoho hostingů zahrnuje CDN i pro malé weby bez dalšího úsilí.

Co se zeptat svého nástroje pro tvorbu s AI

  • „Je před tímto webem CDN? Které soubory ukládá do cache a jak dlouho?“
  • „Ujisti se, že zkompilovaný JavaScript, CSS a obrázky mají hashované názvy a dlouhou dobu cache, zatímco HTML má krátkou.“
  • „Nikdy neukládej do sdílené cache přihlášené stránky ani odpovědi API s osobními údaji.“
  • „Zkomprimuj a zmenši obrázky, aby se galerie načítala rychle.“
  • „Publikoval jsem aktualizaci, ale stále vidím starou verzi. Je to cache prohlížeče, nebo CDN?“

CDN a Mythex

Při publikování na Mythexu se statické frontendy nasazují jako statické weby a v dokumentaci je uvedeno, že cache CDN se mohou po aktualizaci krátce opožďovat: pokud po novém publikování stále vidíte starou verzi, udělejte tvrdé obnovení veřejné URL. Pro to není nic k nastavení. Pokud připojíte vlastní doménu, jejíž DNS je na Cloudflare, dokumentace žádá nastavit záznam na „pouze DNS“ místo proxované, aby Mythex mohl správně vystavit HTTPS. Viz jak publikovat a vlastní domény v dokumentaci a náš průvodce webhostingem.

Otázky

Co je CDN jednoduše řečeno?

CDN (content delivery network) je síť serverů na mnoha místech, které uchovávají kopie souborů vašeho webu. Návštěvníkům se obsah posílá z místa blízko nich, místo z vašeho hlavního serveru, takže stránky se načítají rychleji a váš server má méně práce.

Proč po aktualizaci webu stále vidím starou verzi?

Obvykle proto, že se uchovává kopie starého souboru, v CDN, v prohlížeči nebo v obou. Tvrdé obnovení stránky opraví stranu prohlížeče; kopie v CDN vyprší samy nebo se dají vymazat. Nástroje pro sestavení většinu tohoto problému obcházejí tím, že změněným souborům dávají nové názvy.

Potřebuji CDN pro malý web?

Často ji máte, aniž byste ji vybírali, protože mnoho hostingových platforem staví CDN před weby automaticky. Pokud ji vaše platforma nemá a vaši návštěvníci jsou rozptýleni po různých zemích, její přidání se obvykle vyplatí.

Může CDN ukládat do cache data mé aplikace a stránky pro přihlášené uživatele?

Může uložit do cache cokoli, co smí, proto se musí nastavit opatrně. Veřejné soubory, jako obrázky, skripty a styly, jsou ideální. Osobní nebo přihlášený obsah by se ve sdílené CDN normálně ukládat neměl, jinak by jeden uživatel mohl vidět data jiného.

Mythex · Pricing · Vytvořte cokoli s AI · Šablony webů a aplikací · Mythex v porovnání · Slovník tvorby aplikací s AI · Bezplatné nástroje pro tvorbu aplikací s AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)