Skip to content
Berktug Berke Ates
Berktug Berke Ates

Software Engineer

Blog

Caching-Strategien für produktseitige APIs

· 8 Min. Lesezeit

Ein Cache ist zuerst eine Korrektheitsentscheidung und erst danach eine Performance-Optimierung.

Den Freshness-Contract benennen

Bevor Sie Redis, CDN-Regeln oder HTTP-Header wählen, entscheiden Sie, wie stale eine Response sein darf und was passiert, wenn sie falsch ist. Profilseiten, Inventarzahlen, Preise und Permissions haben unterschiedliche Toleranz für Verzögerung. Ein einziger globaler TTL ist meist ein Produktfehler.

Schreiben Sie den Contract in Engineering-Sprache, auf die Clients sich verlassen können: absolute Expiry, eventgetriebene Invalidierung oder explizite Revalidation. Ambige Freshness erzeugt doppelte Caching-Layer, die gegeneinander kämpfen.

Cachen, wo die Audience ist

Öffentlicher Content profitiert von Edge Caches. Per-User-Dashboards brauchen oft Application-Level-Caches, keyed nach Identity und Tenant. Teure berechnete Aggregationen brauchen möglicherweise Materialisierung statt eines kurzlebigen Key-Value-Eintrags.

Vermeiden Sie das Cachen unautorisierter Responses oder Responses, die Secrets einbetten. Cache Keys müssen jede Dimension einschließen, die Bedeutung ändert: Locale, Plan, Feature Flag und Representation Version.

  • Schützen Sie gegen Thundering Herds bei Expiry
  • Bevorzugen Sie idempotente Recomputation-Pfade
  • Beobachten Sie Hit Rate zusammen mit Wrong-Data-Incidents
  • Invalidieren Sie bei bedeutsamen Domain Events

Invalidierung ist der harte Teil

Zeitbasierte Expiry ist einfach und für kollaborative Daten oft falsch. Eventbasierte Invalidierung ist präzise und leicht zu verpassen bei einem Producer. Viele Systeme kombinieren einen bescheidenen TTL mit explizitem Purge auf Write Paths für kritische Entities.

Gestalten Sie Delete- und Update-Flows so, dass sie die Signale emittieren, die Caches brauchen. Wissen Writer nichts von den Caches der Reader, wird stale Data ein wiederkehrendes Incident-Thema.

Nutzer-sichtbare Outcomes messen

Eine hohe Hit Rate mit steigenden Support-Tickets über veraltete Information ist kein Win. Tracken Sie Latency Percentiles, Origin Load und Korrektheitsbeschwerden zusammen. Caching-Strategie sollte das Produkt gleichzeitig schnell und vertrauenswürdig wirken lassen.

Der beste Cache ist unsichtbar: Nutzer bekommen zeitnahe Antworten, Origins bleiben ruhig, und Engineers können genau erklären, wann Daten nachhinken dürfen.


Veröffentlicht am 18. Juni 2025 von Berktug Berke Ates.