Obsah

Cache (Vyrovnávací paměť)

Cache je klíčovou technologií v architektuře počítačů a sítí. Jejím hlavním účelem je řešit rozdíly v rychlosti mezi různými komponentami systému. Místo toho, aby se data pokaždé znovu generovala nebo stahovala z pomalého zdroje, systém se nejprve podívá do cache, zda tam již nejsou uložena.

Pokud jsou data v cache nalezena, mluvíme o Cache Hit (úspěšný zásah). Pokud ne, mluvíme o Cache Miss (minutí), data se musí načíst z originálního zdroje a následně se do cache uloží pro příští použití.


Úrovně cache v počítači

V moderním počítači existuje hierarchie cache pamětí, které jsou odstupňovány podle rychlosti a kapacity:


Cache v kontextu webu a internetu

Pro koncové uživatele je nejviditelnější využití cache v síťové komunikaci:

1. Browser Cache (Prohlížečová cache)

Webový prohlížeč ukládá na disk vašeho počítače obrázky, soubory CSS a JavaScript z navštívených stránek. Při další návštěvě stejného webu se tyto prvky nenačítají z internetu, ale z lokálního disku, což zrychluje zobrazení stránky a šetří data.

2. Server Side Cache

Webové servery ukládají výsledky složitých databázových dotazů nebo celé vygenerované HTML stránky, aby je nemusely pro každého návštěvníka znovu počítat.

3. CDN (Content Delivery Network)

Globální síť serverů, které fungují jako obří cache pro internet. Kopie dat (např. video na Netflixu) jsou uloženy na serverech fyzicky blíže k uživateli (např. v Praze místo v Kalifornii), což snižuje latenci.


Hlavní výhody a nevýhody

Vlastnost Popis
Rychlost Dramatické zrychlení odezvy aplikací a webových stránek.
Úspora zdrojů Snižuje zátěž procesoru, pevných disků i šířky internetového pásma.
Dostupnost Umožňuje prohlížení některých dat v režimu offline.
Neaktuálnost Hlavní nevýhoda: data v cache mohou být stará (neodpovídají aktuálnímu stavu na serveru).
Soukromí Cache může obsahovat citlivé údaje z navštívených stránek, k nimž by mohl získat přístup jiný uživatel počítače.

Invalidace cache (Čištění)

Největším problémem při práci s cache je vědět, kdy data smazat a nahradit je novými. Tento proces se nazývá Invalidace.


Související pojmy: RAM, CPU, Latence, CDN, Browser, HTTP, Cookie, SSD.