SA Шпаргалка

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

Продвинутый

Почему GraphQL сложно кэшировать на уровне CDN и как это решают?

В REST кэширование работает из коробки: URL /users/1 уникален, метод GET безопасен, CDN легко кэширует ответ.

В GraphQL:
1. Все запросы идут на один URL (/graphql).
2. Используется метод POST (который CDN не кэширует).

✅ Как решают (Persisted Queries / APQ):
1. Клиент хэширует текст своего GraphQL-запроса (получает хэш abc12).
2. Клиент отправляет GET /graphql?extensions={"hash":"abc12"}.
3. CDN видит GET и уникальный URL, поэтому может его закэшировать.
4. Если сервер не знает этот хэш, клиент отправляет полный POST-запрос, сервер сохраняет связку "хэш -> текст запроса" для будущих GET-вызовов.

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

Ещё вопросы раздела «Интеграции»

Все вопросы раздела «Интеграции»