Специализация
Python Backend Developer
Java Backend Developer
Node.js Backend Developer
Golang Backend Developer
React Frontend Developer
Выберите навыки
React
JavaScript
Git
Redux
Webpack
Сложность
1-3
4-6
7-8
9-10
Рейтинг вопросов
1
2
3
4
5
Подпишись на React Developer в телеграм
Расскажите про механизмы повтора (retry) и циркуйтера (circuit breaker)?
Retry автоматически повторяет неудачный вызов другого сервиса, предполагая, что ошибка временная (например, сетевой сбой). Circuit Breaker действует как автоматический предохранитель: если сервис постоянно недоступен, он прекращает все попытки вызова на некоторое время, чтобы избежать перегрузки и дать сервису восстановиться. Вместе они защищают систему от каскадных отказов.
Что делать в ситуации, когда частые ретраи сообщений создают повышенную нагрузку на зависимый сервис, и какие механизмы защиты можно использовать, включая circuit breaker и отложенные очереди?
При частых ретраях нужно ограничивать поток повторных запросов, чтобы не перегружать зависимый сервис. Для этого используют отложенные очереди (delayed queues), экспоненциальный backoff, circuit breaker, лимит обработки сообщений и идемпотентные операции. Circuit breaker позволяет временно "разорвать" цепочку запросов при ошибках, а отложенные очереди дают возможность откладывать повторную попытку на более позднее время. Цель — стабилизировать систему и предотвратить лавинообразные ошибки.
Какие риски возникают при изменении схемы данных в GraphQL?
Изменение схемы GraphQL может сломать клиентские запросы. Особенно опасно удаление или переименование полей. Клиенты могут перестать работать без очевидных ошибок на сервере. Требуется аккуратная стратегия версионирования и деприкации. Без этого изменения становятся рискованными.
Рейтинг:
2
Сложность:
7
Рейтинг:
5
Сложность:
8
Рейтинг:
5
Сложность:
6