Cache-Aside
Bei Cache-Aside fragt die Anwendung den Cache ab und lädt beim Miss aus dem maßgeblichen Speicher.
- Cache HitEintrag ist vorhanden.
- Cache MissDatenbank lesen und Cache befüllen.
- SchreibänderungAblauf oder Invalidierung festlegen.
Einordnung
Warum das wichtig ist
Cache-Aside für wiederholte Lesezugriffe mit expliziter Aktualitätsregel einsetzen.
Lesezugriffsstrategie mit anwendungsseitiger Befüllung, Ablaufzeit und Invalidierung.
Cache-Aside: Hit, Miss und Invalidierung
Das Katalogmodul cached lesende Produktabfragen; Bestands- und Preisänderungen brauchen passende Aktualisierung.
So liest du das Bild
- Cache Hit direkte Antwort
- Cache Miss Nachladen
- Schreibänderung Aktualität
| Aspekt | Bedeutung | Prüfung |
|---|---|---|
| Lesen | Cache zuerst prüfen. | Miss aus Quelle laden. |
| Schreiben | Quelle aktualisieren. | Cache gezielt erneuern. |
Nutzen & Grenzen
Hilft, wenn
- Wiederholte Lesezugriffe können aus einem Cache bedient werden.
- Die Anwendung soll Befüllung und Invalidierung selbst steuern.
Grenzen
- Cache und Quelle können zeitweise unterschiedliche Werte enthalten.
- Ein Cache-Fehler oder hoher gleichzeitiger Miss kann zusätzliche Last und Latenz erzeugen.
In der Praxis
- Benenne Schlüssel, Quelle der Wahrheit, Ablaufzeit und fachlich tolerierbare Veraltung für die konkrete Abfrage. Vermeide, Cache-Schlüssel von ungeprüften Eingaben ableiten zu lassen.
- Implementiere Hit und Miss getrennt und entscheide, wie Einträge nach Änderungen invalidiert oder aktualisiert werden. Begrenze parallele Nachladevorgänge, wenn viele Anfragen denselben Eintrag vermissen.
- Miss, veralteten Wert, Cache-Ausfall und parallele Erstabfragen testen; Last und Trefferquote gegen die Datenbank messen.
Ausführliche Erklärung lesen
Beim Treffer nutzt die Anwendung den zwischengespeicherten Wert. Beim Fehlschlag liest sie aus dem maßgeblichen Speicher, schreibt den Wert mit Ablaufzeit in den Cache und liefert ihn aus. Schreibpfade ändern zuerst die Quelle; die Cache-Invalidierung oder erneute Befüllung braucht eine festgelegte Regel.
Cache-Aside ist eine Strategie für lesende Zugriffe und lässt den Cache außerhalb der Quelle der Wahrheit. Veraltete Daten, Stampedes, Cache-Ausfälle und negative Treffer müssen zum fachlichen Aktualitätsbedarf passen.
Cache-Aside ist eine Caching-Strategie; Datenbesitz bestimmt die Quelle, die bei einem Miss maßgeblich bleibt.
Die Datenhoheit legt fest, welche Quelle bei einem Miss maßgeblich bleibt.
Selbst prüfen
Teste dich in drei Stufen
AblesenIm Bild nachsehen
Was geschieht beim Cache-Miss?
Lösung mit Begründung ansehen
Die Anwendung liest die Datenbank und befüllt den Cache.
AnwendenAuf eine neue Lage übertragen
Wie bleibt ein geänderter Produktpreis korrekt sichtbar?
Lösung mit Begründung ansehen
Das Katalogmodul invalidiert oder erneuert den betroffenen Cache-Eintrag.
BewertenEine Alternative abwägen
Wann ist eine kurze Veraltung nicht akzeptabel?
Lösung mit Begründung ansehen
Wenn die fachliche Regel aktuelle Werte verlangt, etwa bei verbindlicher Preis- oder Bestandsprüfung.
Vertiefen
Diese Bausteine führen die Gedanken dieser Seite weiter.
Quellen
- Microsoft · Cache-Aside pattern (öffnet in neuem Tab)Primärdokumentation für Cache-Aside-Ablauf und Invalidierung.
- AWS Well-Architected · Caching (öffnet in neuem Tab)Architekturleitfaden für Caching in Datenzugriffsmustern.
- Google Cloud · Memorystore for Redis (öffnet in neuem Tab)Dokumentation zum Betrieb eines verwalteten Cache-Dienstes.