Nehmen wir an, wir haben folgendes graphql-Schema:
%Vor%Und dann eine Abfrage wie:
%Vor%Wenn wir zum Beispiel 10 Bücher haben, dann werden wir 10 Autorenabfragen haben, da die Auflösungsfunktion für jedes abgerufene Buch aufgerufen wird:
%Vor%Stattdessen können wir alle Autorenabfragen als eine einzige Abfrage ausführen:
%Vor%Gibt es einige funktionierende Lösungen, Best Practices, Techniken oder etwas, das dazu beitragen kann?
Dataloader ist Ihre Antwort, es hat Batch-Funktion, was bedeutet, dass es alle IDs in die Warteschlange stellen wird. Und erst wenn es fertig ist, wird es als Batch gezogen Demo kann hier gefunden werden: Ссылка (die letzten 5 Minuten im Besonderen) Algorithem erklärt kann hier gefunden werden: Ссылка
Genießen Sie:)
DataLoader ist eine großartige datenbankunabhängige Lösung. Wenn Sie SQL verwenden, ist Join Monster besser auf relationale DBs zugeschnitten und übersetzt die GraphQL-Abfragen sogar direkt in SQL eine einzelne Hin- und Rückfahrt Eine andere Alternative ist graph-joiner .
Tags und Links graphql graphql-js