Встречается на собеседованиях • сегодня
Какие знаешь особенности работы с микросервисной архитектурой
Микросервисная архитектура предполагает разбиение приложения на небольшие независимые сервисы, каждый со своей бизнес-логикой.
**Ключевые особенности:**
1. **Независимость** – сервисы развертываются отдельно, могут использовать разные технологии.
2. **Масштабируемость** – можно масштабировать только нужные сервисы.
3. **Отказоустойчивость** – падение одного сервиса не должно влиять на всю систему (используются паттерны Circuit Breaker, Retry).
4. **Сложность** – требуется управление межсервисным взаимодействием (REST, gRPC, Kafka), мониторинг (Prometheus, Grafana), логирование (ELK).
**Пример с Circuit Breaker (Resilience4j):**
```java
CircuitBreakerConfig config = CircuitBreakerConfig.custom()
.failureRateThreshold(50)
.waitDurationInOpenState(Duration.ofMillis(1000))
.build();
CircuitBreaker circuitBreaker = CircuitBreaker.of("serviceA", config);
Supplier decorated = CircuitBreaker.decorateSupplier(
circuitBreaker,
() -> restTemplate.getForObject("/service-a", String.class)
);
```
**Недостатки:**
- Сложность отладки (distributed tracing – Jaeger, Zipkin).
- Нужна продуманная стратегия развертывания (CI/CD, Kubernetes).

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