Встречается на собеседованиях • сегодня

Какие знаешь три шаблона проектирования связанных с микросервисом

1. **Circuit Breaker** - защищает систему от каскадных сбоев. При частых ошибках вызовов внешнего сервиса переключается в "разомкнутое" состояние, временно блокируя вызовы. Пример с Resilience4j: ```java CircuitBreaker circuitBreaker = CircuitBreaker.ofDefaults("backendService"); Supplier decorated = CircuitBreaker .decorateSupplier(circuitBreaker, backendService::call); ``` 2. **API Gateway** - единая точка входа для клиентов, которая маршрутизирует запросы к соответствующим микросервисам, может агрегировать данные и обрабатывать аутентификацию. 3. **Saga** - управляет распределенными транзакциями через последовательность локальных транзакций с компенсирующими действиями при ошибках. Пример: ```java // Saga шаги 1. OrderService.createOrder() 2. PaymentService.processPayment() 3. Если шаг 2 падает - OrderService.cancelOrder() ```
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы