Wprowadzenie
Cache Invalidation (Unieważnianie cache) to proces usuwania lub oznaczania jako nieaktualne danych przechowywanych w cache, gdy ulegną one zmianie w źródle. Jest uważany za jedno z najtrudniejszych zagadnień w informatyce.
„There are only two hard things in Computer Science: cache invalidation and naming things.”
— Phil Karlton
Problemy z unieważnianiem cache
- Stale Data – użytkownik widzi stare dane
- Cache Stampede / Thundering Herd – wiele zapytań jednocześnie uderza w bazę po wygaśnięciu cache
- Over-invalidation – niepotrzebne czyszczenie cache, spadek wydajności
- Under-invalidation – dane nie są aktualizowane
Strategie unieważniania cache
- Time-based (TTL) – automatyczne wygaśnięcie po określonym czasie
- Write-through – zapis do bazy i cache jednocześnie
- Write-behind – zapis asynchroniczny
- Event-driven Invalidation – powiadomienie cache po zmianie danych
- Versioning – dodawanie numeru wersji do klucza cache
- Stale-While-Revalidate (SWR) – popularne w Next.js
- Cache Tagging – grupowanie cache i masowe unieważnianie
Cache Invalidation w AI i dużych systemach
- Unieważnianie embeddingów i wektorów po fine-tuningu modelu
- Cache promptów i odpowiedzi LLM
- Cache RAG (Retrieval-Augmented Generation)
- Versioning modeli AI w produkcji
Powiązane pojęcia
Cache • CDN • Stale-While-Revalidate • TTL • Cache Poisoning • Cache Stampede • Write-Through Cache • Redis • CDN Purging • Next.js Revalidation
Dodano: 16 maja 2026