Wat is cache en wanneer moet je die wissen?
Auteur: Redactie Domeny.ForSale Gepubliceerd
Kort uitgelegd: Cache, ook wel cachegeheugen genoemd, bewaart gegevens die later opnieuw nodig kunnen zijn, zodat ze sneller beschikbaar zijn. Daardoor hoeft een browser niet telkens dezelfde bestanden te downloaden en hoeft een server bepaalde berekeningen niet opnieuw uit te voeren. Soms zijn de opgeslagen gegevens echter verouderd. Dan helpt het om ze te verversen of de betreffende cache te wissen.
Hoe werkt cachegeheugen?
Wanneer een applicatie bepaalde gegevens nodig heeft, kan ze eerst controleren of die in de cache staan. Vindt ze daar een kopie die ze volgens de ingestelde regels mag gebruiken, dan leest ze die uit in plaats van de gegevens bij de bron op te halen. Dat heet een cache-hit. Is er geen kopie of is die niet bruikbaar, dan haalt de applicatie de gegevens opnieuw op of berekent ze die opnieuw.
Stel je een webwinkel voor waarin je verschillende producten bekijkt. Het winkellogo, sommige pictogrammen en het bestand dat de vormgeving van de website bepaalt, zijn op meerdere pagina’s hetzelfde. De browser kan ze na de eerste download bewaren, in plaats van ze bij elke klik opnieuw te downloaden.
Cache hoeft niet in het RAM-geheugen te staan. Afhankelijk van de toepassing worden gegevens ook op een schijf of op een aparte server opgeslagen. Het doel is steeds hetzelfde: gegevens sneller toegankelijk maken en het werk beperken dat nodig is om ze te verkrijgen.
Waar kom je cache dagelijks tegen?
Cache werkt op verschillende niveaus. Door die te onderscheiden, kun je beter achterhalen waarom een website of applicatie nog steeds oude gegevens toont.
| Soort cache | Wat erin kan worden opgeslagen | Waarvoor die dient |
|---|---|---|
| Browser | Afbeeldingen, stijlbestanden en scripts | Beperkt het opnieuw downloaden van websitebestanden |
| Applicatie | Miniaturen, gedownload materiaal, resultaten van zoekopdrachten | Versnelt het weergeven van inhoud en het uitvoeren van herhaalde bewerkingen |
| Server | Kant-en-klare pagina’s of berekeningsresultaten | Vermindert de belasting van het systeem waarop de website draait |
| CDN | Kopieën van bestanden of antwoorden van de website | Levert inhoud via een verspreid netwerk van servers |
| DNS | Antwoorden met onder meer het IP-adres van een domein | Beperkt het herhaaldelijk opvragen van het serveradres |
Een CDN is een netwerk van servers dat als tussenlaag inhoud aan gebruikers levert. DNS is daarentegen een systeem waarmee je onder meer het IP-adres kunt achterhalen dat bij een domeinnaam hoort. De cache van DNS bewaart niet de vormgeving van een website, maar antwoorden over de adressering ervan.
Ook processors hebben hun eigen cachegeheugen, dat snelle toegang biedt tot veelgebruikte gegevens en instructies. Dat is echter niet de cache die je via de browserinstellingen wist.
Waarom toont cache soms oude gegevens?
Een kopie in de cache verandert niet altijd tegelijk met de bron. Als de eigenaar van een website een afbeelding vervangt, kan de browser nog steeds het eerder gedownloade bestand gebruiken. Ook een server kan een opgeslagen versie van een pagina terugsturen in plaats van die opnieuw te genereren.
Een manier om te bepalen hoelang gegevens actueel blijven, is TTL: de geldigheidsduur van een cache-item. Zodra die is verstreken, kan het systeem nieuwe gegevens ophalen of controleren of de bestaande kopie nog actueel is. Het verlopen van de geldigheid betekent op zichzelf niet dat het bestand onmiddellijk van de schijf wordt verwijderd.
Een ander mechanisme is cache-invalidatie: een opgeslagen kopie als verouderd markeren of verwijderen nadat de gegevens zijn gewijzigd. Bij het publiceren van nieuwe websitebestanden worden ook versies in de adressen gebruikt, bijvoorbeeld door style.v1.css te veranderen in style.v2.css. Dankzij het nieuwe adres kan het systeem het nieuwe bestand onderscheiden van de eerder opgeslagen kopie.
Gegevens zoals de inhoud van een persoonlijk account of een winkelmandje vereisen extra zorgvuldigheid. Een cache die door meerdere gebruikers wordt gedeeld, mag de ene gebruiker geen inhoud tonen die voor een andere gebruiker bestemd is. Dat is een kwestie van websiteconfiguratie; het wissen van de browsercache door een bezoeker lost dit niet op.
Wanneer en hoe wis je de cache?
De cache wissen is zinvol als een pagina verkeerd wordt weergegeven, gepubliceerde wijzigingen niet toont of een applicatie beschadigde tijdelijke bestanden gebruikt. Het is niet nodig om dit dagelijks te doen om je apparaat sneller te maken. Nadat de kopieën zijn verwijderd, kan het eerste bezoek aan een pagina langer duren, omdat bestanden opnieuw moeten worden gedownload.
Vermoed je een probleem met de cache van een website, doorloop dan deze stappen:
- Ververs de pagina. Helpt dat niet, gebruik dan de browserfunctie om de pagina opnieuw te laden zonder de cache te gebruiken. Gewoon verversen dwingt de browser niet altijd om alle bestanden opnieuw te downloaden.
- Bekijk de pagina in een andere browser. Een verschil kan wijzen op een lokaal probleem, al kunnen ook extensies of instellingen de oorzaak zijn.
- Wis de afbeeldingen en bestanden in de cache. Controleer de gekozen periode en de aangevinkte opties. De benamingen verschillen per browser; als je alle websitegegevens verwijdert, kunnen ook aanmeldgegevens en instellingen worden gewist.
- Beheer je de website, controleer dan de servercache en de CDN-cache. Het verwijderen van lokale bestanden wist niet de kopieën die deze systemen bewaren.
Na een wijziging van het IP-adres van een domein kan de cache van DNS een rol spelen. Als je die op je computer wist, verdwijnen de opgeslagen vermeldingen niet uit de cache van de DNS-servers die je provider gebruikt. Je ziet de wijziging daardoor niet gegarandeerd meteen.
Cache, cookies en appgegevens zijn niet hetzelfde
Cookies zijn kleine hoeveelheden gegevens die een website in de browser kan opslaan, bijvoorbeeld om de sessie van een gebruiker te herkennen. Cache dient vooral om bestanden en andere bronnen opnieuw te gebruiken. Als je alleen bestanden in de cache wist, word je doorgaans niet uitgelogd bij websites. Het verwijderen van cookies kan dat wel veroorzaken.
In de instellingen van een applicatie doet de optie ‘gegevens wissen’ meestal meer dan ‘cache wissen’. Ze kan instellingen, aanmeldgegevens of lokaal opgeslagen materiaal verwijderen. Lees voordat je deze optie gebruikt de systeemmelding en controleer of belangrijke bestanden zijn opgeslagen of gesynchroniseerd.
Heeft slechts één website een probleem, begin dan met het verversen van de pagina en het wissen van alleen de bijbehorende bestanden in de cache, als je browser die mogelijkheid biedt. Wis niet alle browsegegevens voordat je een minder ingrijpende oplossing hebt geprobeerd.
