Caching
CachingCaching van Veldresolutie

Caching van Veldresolutie

Included in the “Power Extensions” bundle

Toevoeging van de @cache-directive aan het GraphQL-schema, die het resultaat van een veld op schijf opslaat voor een gevraagde tijdsduur. Wanneer hetzelfde veld binnen die tijdspanne wordt uitgevoerd, wordt de gecachte waarde teruggegeven.

Voeg @cache toe aan het veld dat je wilt cachen in de GraphQL-query, en geef daarbij aan hoe lang (in seconden) het resultaat in de cache moet worden bewaard.

Deze directive kan de prestaties verbeteren bij het uitvoeren van kostbare operaties (zoals bij interactie met externe API's), omdat je hun respons kunt cachen en hergebruiken.

Voorbeeld

@strTranslate maakt verbinding met de Google Translate API. Door @cache(time: 10) te gebruiken, wordt de vertaalde waarde van het title-veld 10 seconden in de cache opgeslagen. Als je dezelfde query binnen deze tijdspanne opnieuw uitvoert, wordt de verbinding met Google Translate vermeden, wat resulteert in een zeer snelle resolutie.

query {
  posts(pagination:{ limit: 3 }) {
    id
    title
      @strTranslate(from: "en", to: "es")
      @cache(time: 10)
  }
}