System Design · Middle · Frage 6 von 75
Was ist das N+1-Problem in GraphQL, und wie löst man es?
- 1Der Client sendet wegen Re-Renderings N+1 identische Anfragen
- 2Das Schema hat mehr Typen als die Datenbank Tabellen
- 3Eine DB-Abfrage pro Element; gelöst durch Batching
Antwort zeigen
Richtige Antwort: Eine DB-Abfrage pro Element; gelöst durch Batching
Erklärung
Eine Liste von 100 Posts mit Feld author an jedem erzeugt 1 + 100 Abfragen. DataLoader sammelt IDs innerhalb eines Ticks, macht eine Abfrage WHERE id IN (...) und cacht die Ergebnisse für die Dauer der Anfrage.