Proč je důležité cache čistit
Cache je dočasné úložiště, které systémy a aplikace používají k urychlení opakovaného přístupu k datům. Postupem času se však může cache zaplnit neaktuálními nebo poškozenými soubory, což vede k pomalému načítání stránek, chybám v aplikacích nebo dokonce k nestabilitě operačního systému. Pravidelné čištění cache pomáhá uvolnit místo na disku, zlepšit výkon a odstranit problémy způsobené zastaralými daty. V tomto článku se podíváme na konkrétní kódy a postupy pro vymazání cache na různých platformách – od Linuxu přes Windows až po webové prohlížeče.
Linux – vyčištění cache pomocí jádra
Operační systém Linux ukládá do cache často používané bloky z disku, aby urychlil čtení. Pokud potřebujete tuto cache vymazat ručně, Linuxové jádro nabízí přímý mechanismus. Stačí provést příkaz s oprávněním roota, který zapíše hodnotu do speciálního souboru v procfs. Nejznámější je zápis číslice 3, který vyčistí pagecache, dentries a inodes najednou. Provedete to takto:
echo 3 > /proc/sys/vm/drop_caches
Tento příkaz je standardní součástí jádra a není třeba instalovat žádný skript. Je však důležité mít na paměti, že hodnota 1 vyčistí pouze pagecache, hodnota 2 vyčistí dentries a inodes a hodnota 3 vše dohromady. Po provedení příkazu systém okamžitě uvolní paměť pro nová data. Doporučujeme předtím uložit veškerou práci, protože může dojít k mírnému zpomalení, dokud se cache znovu nezaplní.

Seznam použitelných hodnot pro drop_caches:
- 1: smaže pagecache (stránky souborů)
- 2: smaže dentries a inodes (adresářové položky a indexové uzly)
- 3: smaže pagecache, dentries a inodes (vše najednou)
Tabulka shrnující význam a vliv jednotlivých hodnot:
Hodnota | Co maže | Dopad na výkon
1 | Pagecache | Uvolní paměť pro data souborů, aplikace mohou chvíli pomaleji načítat
2 | Dentries a inodes | Uvolní paměť pro metadata souborů, dojde k obnovení adresářové struktury
3 | Všechny tři | Kompletní obnova cache, nejvýraznější uvolnění RAM

Linux – automatizace pomocí skriptu a cronu
Pokud potřebujete cache čistit pravidelně, například každý den v noci, vytvořte jednoduchý bash skript. Vložte do něj příkaz pro drop_caches, nastavte jej jako spustitelný a naplánujte pomocí cronu. Skript může vypadat například takto:
#!/bin/bash
sync; echo 3 > /proc/sys/vm/drop_caches
Příkaz sync zajistí, že před vyčištěním budou všechna data zapsána na disk. Skript uložte do souboru, například /usr/local/bin/clean-cache.sh. Poté jej učinte spustitelným příkazem chmod a+x /usr/local/bin/clean-cache.sh. Pro pravidelné spouštění přidejte řádku do crontabu (crontab -e):
0 3 * * * /usr/local/bin/clean-cache.sh

Tento záznam spustí skript každou noc ve 3:00. Automatizace je užitečná pro servery nebo stanice, kde se cache rychle zaplňuje a ruční čištění není praktické.
Windows – mazání dočasných souborů a cache
Na Windows se cache ukládá do několika systémových složek. Nejčastější místa jsou dočasné soubory v %systemroot%\Temp a složka, kam Windows stahuje aktualizace (%windir%\SoftwareDistribution\Download). Pro jejich vyčištění můžete použít příkazový řádek. Otevřete konzoli jako správce a postupně spusťte:
del /s /q %systemroot%\Temp\*.*
del /s /q %windir%\SoftwareDistribution\Download\*.*
Tyto příkazy smažou všechny soubory v uvedených složkách. Poté je vhodné restartovat službu Windows Update, aby se obnovila její funkčnost:

net stop wuauserv & net start wuauserv
Pro plošné čištění můžete také použít vestavěný nástroj Vyčištění disku (cleanmgr), ale výše uvedený kód je rychlejší a cílenější. Pamatujte, že smazání souborů ze složky SoftwareDistribution může ovlivnit stahování aktualizací, proto je vhodné provést restart služby.
Webové prohlížeče – čištění cache přes UI i JavaScript
Nejčastější způsob, jak vymazat cache v prohlížeči, je manuálně přes nabídku. V Google Chrome klikněte na tři tečky vpravo nahoře, zvolte Další nástroje a poté Vymazat údaje o prohlížení. V dialogu zaškrtněte položku Obrázky a soubory v mezipaměti a klikněte na Vymazat data.
Pro vývojáře webových aplikací je důležité umět cache vymazat programově. Pokud používáte Service Workers, můžete využít Cache API. Následující JavaScriptový kód smaže konkrétní cache pojmenovanou jako mojeCache:

caches.delete('mojeCache')
Pro smazání všech cache verzí lze iterovat přes klíče. Service Workers umožňují kontrolovat, které soubory jsou v prohlížeči uloženy, a tak efektivně zajistit, že uživatel vždy uvidí nejnovější verzi vašeho webu.
Adobe AEM – pročištění CDN cache
Pokud pracujete s Adobe Experience Manager v cloudu, můžete cache na CDN vymazat pomocí HTTP žádosti typu PURGE. Pošlete požadavek na URL, kterou chcete zneplatnit, s hlavičkou X-AEM-Purge-Key obsahující váš klíč. Příklad:
PURGE https://vas-domena.cz/obsah HTTP/1.1
X-AEM-Purge-Key: tajny-klic
Tento kód okamžitě vyřadí z CDN daný zdroj a příští požadavek bude obsloužen z origin serveru. Podobně lze pracovat s celými cestami nebo s regulárními výrazy. Tato metoda je užitečná pro vývojáře, kteří potřebují rychle publikovat změny bez čekání na vypršení TTL.
Mobilní zařízení – Samsung Galaxy
Na telefonech Samsung s Androidem je nejjednodušší způsob, jak vyčistit cache konkrétní aplikace, přes Nastavení. Přejděte do Aplikace, vyberte požadovanou aplikaci, dále Úložiště a klepněte na Vymazat cache. Tento postup odstraní dočasná data, která aplikace uložila, aniž byste přišli o přihlašovací údaje nebo osobní nastavení. Pro hromadné čištění můžete použít nástroj optimalizace přímo v systému.
Zdroje
Linux Kernel Documentation – Drop Caches: kernel.org
Viva o Linux – Limpando cache de RAM: vivaolinux.com.br
Procedimento.com.br – Script para Limpeza de Cache no Windows: procedimento.com.br
MDN Web Docs – Service Workers Cache API: developer.mozilla.org
Adobe Experience Manager – Purge Cache: experienceleague.adobe.com
Google Help – Clear cache and cookies: support.google.com
Samsung Support – Clear app cache: samsung.com




