GraphQL zu cachen ist schwieriger als REST, weil es einen Endpunkt gibt und Anfragen meist POST sind, sodass URL-basiertes HTTP-Caching nicht out of the box funktioniert. Stattdessen cachest du auf drei Ebenen: Client, Transport/CDN und Server.
Normalisierter Client-Cache
Apollo Client und Relay speichern Ergebnisse in einem , indiziert nach + . Jedes Objekt wird einmal gespeichert; verschiedene Abfragen, die denselben referenzieren, teilen ihn sich, sodass eine Mutation, die eine Entität aktualisiert, automatisch jede Ansicht aktualisiert.
