Встречается на собеседованиях • сегодня
Приходилось ли использовать паттерны для обработки ошибок при взаимодействии между микросервисами
Да, использовал несколько подходов:
- Circuit Breaker (Hystrix/Resilience4j) - предотвращает каскадные сбои:
java
@CircuitBreaker(name="serviceA", fallbackMethod="fallback")
public String callServiceA() {
return restTemplate.getForObject("/api", String.class);
}
public String fallback(Exception e) {
return "Fallback response";
}
text
2. **Retry** - для временных сбоев:
```java
@Retry(name="serviceB", fallbackMethod="fallback")
public String callServiceB() {
// вызов сервиса
}-
Dead Letter Queue - для асинхронных сценариев, когда сообщения с ошибками отправляются в отдельную очередь.
-
Saga Pattern - для распределенных транзакций, где компенсирующие транзакции откатывают изменения при ошибках.
Для синхронных вызовов также важно корректно обрабатывать HTTP статусы (например, 429 Too Many Requests) и реализовывать экспоненциальную задержку между повторами.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы