Cache: definitie en alle toepassingsgebieden van caching

De gebieden waarin caches worden gebruikt, van hardware tot het web, zijn in één boom samengebracht volgens de indelingen van Wikipedia, MDN en de officiële WordPress-documentatie. CPU's, besturingssystemen, databases en browsers gebruiken allemaal dezelfde naam, dus wat er bij het legen van de cache verdwijnt, hangt af van de laag.
Een cache slaat gegevens die vaak worden gebruikt of binnenkort nodig zijn tijdelijk op in een opslag die sneller is dan het origineel, en beantwoordt hetzelfde verzoek met die kopie in plaats van met het origineel.
Het Engelstalige Wikipedia-artikel Cache (computing) verdeelt caches in hardwarecaches, zoals CPU- en GPU-caches, en softwarecaches, zoals schijf-, web-, DNS- en databasecaches. De boom hieronder groepeert die indeling naar de plek waar een cache zit, en webcaches volgen de indeling van MDN in private cache en shared cache.
In de simulator van het artikel Websitecache & servercache: zo werkt caching in WordPress zie je in welke volgorde de browsercache, het CDN en de interne servercache één WordPress-verzoek afhandelen.
Ⅰ. Apparaten van gebruikers
Caches op apparaten van gebruikers, zoals pc's en smartphones, kun je indelen in de cache van het besturingssysteem (OS), de browsercache en de cache van mobiele apps.
De schijfcache (paginacache) houdt van schijf gelezen gegevens in het geheugen vast en wordt beheerd door de kernel van het besturingssysteem. De DNS-cache bewaart onlangs opgevraagde domeinen en IP-adressen.
Wordt dezelfde resource opnieuw opgevraagd, dan gaat het verzoek niet naar de server of wordt alleen gecontroleerd of de resource is veranderd. Met een Service Worker (Cache API) kan een webapp ook offline met opgeslagen resources openen.
Apps met veel content slaan gedownloade gegevens en recent bekeken lijsten op het apparaat op, zodat ze dezelfde gegevens niet opnieuw downloaden.
Ⅱ. Server- en applicatiecache
Een cache aan de serverkant zit in het proces waarin een pagina wordt opgebouwd nadat een verzoek de server heeft bereikt. De officiële WordPress-documentatie deelt dit op in cachingplugins (paginacache), objectcache en servercache (opcodecaches zoals OPcache).
Bij een verzoek om dezelfde pagina wordt de opgeslagen kopie verstuurd zonder PHP uit te voeren. Er zijn cachingplugins en webservercaches.
Wordt hetzelfde bestand opnieuw uitgevoerd, dan wordt het compileren overgeslagen. Sinds PHP 5.5 is het standaard ingebouwd.
Slaat vaak gebruikte gegevens op in een geheugenopslag, zodat dezelfde query niet steeds opnieuw wordt uitgevoerd.
Webframeworks slaan gerenderde templates en queryresultaten op in hun eigen cache.
Ⅲ. Cache voor contentlevering / netwerkinfrastructuur
Caches in de netwerkinfrastructuur antwoorden tussen de bezoeker en de originele server met een kopie, wat de fysieke afstand en de belasting van de originele server verkleint. In de HTTP-cachingstandaard vallen ze onder de shared cache die door meerdere bezoekers wordt gedeeld.
Levert de inhoud vanaf de server die het dichtst bij de bezoeker staat, uit servers die over de hele wereld verspreid zijn. De opbouw en de voordelen worden in het artikel Wat is een CDN? Redenen om een CDN te gebruiken en 5 voordelen uitgelegd.
Een forward proxy slaat antwoorden op aan de kant van de client, zoals in een bedrijfsnetwerk, en een reverse proxy doet dat vóór de server.
Netwerkapparatuur bewaart de koppelingen in de ARP-cache; DNS-resolvers van providers en openbare DNS-resolvers bewaren lookupresultaten zolang de TTL van het record geldt.
Ⅳ. Cache van databases en opslagsystemen
Omdat schijf-I/O traag is, houden databases en opslagapparaten vaak gelezen gegevens in het geheugen.
Houdt vaak gelezen gegevens en indexen in het geheugen. De querycache van MySQL is in 8.0 verwijderd; MariaDB heeft hem nog, maar standaard staat hij uit.
Het geheugen in de controller van de harde schijf en het DRAM in de SSD slaan gegevens tijdelijk op en verkorten zo de I/O-vertraging.
Ⅴ. Cache op hardwareniveau
Hardwarecaches zijn snel geheugen in de CPU en GPU dat gegevens sneller verwerkt dan het werkgeheugen (RAM).
Elke core heeft een eigen L1, verdeeld in een instructiecache en een datacache, terwijl L3 door alle cores wordt gedeeld. De geheugenbeheereenheid (MMU) slaat de resultaten van het vertalen van virtuele naar fysieke adressen op in de TLB.
Verhoogt de verwerkingsefficiëntie van de GPU bij games, 3D-graphics en machinelearningberekeningen.
Ⅵ. Cache in cloud- en virtualisatieomgevingen
Cloud- en virtualisatieomgevingen hergebruiken containerimages, uitvoeringsomgevingen van functies en buildresultaten om de tijd voor uitrollen en uitvoeren te verkorten.
Een Docker-image bestaat uit meerdere lagen, en lagen die niet zijn veranderd, worden niet opnieuw gebouwd of gedownload.
Houdt de uitvoeringsomgeving van een afgeronde aanroep een tijd vast en hergebruikt die bij de volgende aanroep, zodat de initialisatietijd (Cold Start) korter wordt (Warm Start).
Verkort de tijd van herhaalde builds.
🔢 FAQ & aanbevolen content









ℹ️ Affiliatemelding
De content van deze site bevat affiliatelinks. Koopt een bezoeker via een van deze links een product of dienst, dan ontvangt deze site een commissie van de verkoper. Het bedrag dat de koper betaalt (bij acties gaat het omlaag ↓) wordt daardoor niet hoger. De vermelde prijzen, kortingen en voorraad gelden op het moment van schrijven en kunnen afwijken; controleer ze daarom vóór je aankoop bij de verkoper. Producten worden gekozen en beoordeeld volgens onze eigen criteria, en commissies hebben geen invloed op de volgorde of de inhoud van de beoordelingen.