Cache

Cache speichert häufig benötigte Daten zwischen für schnelleren Zugriff.

Wie ein Notizzettel mit den wichtigsten Sachen für schnellen Zugriff.

Cache Typen

  • Docker Layer Cache - Beschleunigt Image Builds
  • Application Cache - Redis, Memcached
  • DNS Cache - Beschleunigt Name Resolution
  • Web Cache - Nginx, Varnish

CPU-Cache (Hardware)


Schneller Zwischenspeicher zwischen Registern und RAM, der den von-Neumann-Flaschenhals entschärft (siehe von-Neumann-Zyklus). Hält häufig benutzte Daten vor.

Block-Mapping (Modulo)

L2-Cache mit 512 Zeilen, Zeilengröße 64 Byte. Byte mit Adresse 222433:

Block=22243364=3475Zeile=3475mod512=403

Ist die Zeile schon belegt → alter Inhalt wird verdrängt (Cache Eviction). Echte Caches haben mehrere Spalten = Assoziativität (z.B. 8-fach assoziativ).

Cache & Sicherheit

Unterschiedliche Ladezeiten (Cache-Hit vs. -Miss) werden für Cache-Timing-Angriffe ausgenutzt — auch Meltdown & Spectre (2017) basieren darauf.