SA Шпаргалка

Все ответы в 2 клика

Продвинутый

Как работает паттерн Dataloader в GraphQL?

Dataloader — это утилита для решения проблемы N+1 запросов в GraphQL.

Проблема: Если мы запрашиваем 10 постов и для каждого нужен автор, GraphQL-резолвер сделает 1 запрос на посты и 10 отдельных запросов к БД на авторов.

Решение (Dataloader):
1. Батчинг (Batching): Dataloader ждет 1 тик Event Loop (собирает все ID авторов: 1, 2, 3... 10).
2. Делает один SQL-запрос: SELECT * FROM authors WHERE id IN (1,2...10).
3. Кэширование (Caching): Если в рамках одного GraphQL-запроса два поста написаны одним автором (ID=5), Dataloader не будет запрашивать его дважды, а отдаст из кэша.

Сложная тема? Разберём на мок-интервьюЗаписаться на менторство →

Другие вопросы темы «GraphQL (Эксперт)»

Ещё вопросы раздела «REST API»

Все вопросы раздела «REST API»