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

Какие архитектурные решения считаешь оптимальными для микросервисной системы

Оптимальные архитектурные решения для микросервисов включают:

  1. API Gateway – единая точка входа для клиентов, маршрутизация, аутентификация, кэширование.
  2. Service Discovery (например, Consul, Eureka) – автоматическое обнаружение сервисов.
  3. Event-Driven Architecture (Kafka, RabbitMQ) – асинхронная коммуникация через события.
  4. Circuit Breaker (Hystrix, Resilience4j) – защита от каскадных сбоев.
  5. Контейнеризация и оркестрация (Docker + Kubernetes) – масштабируемость и отказоустойчивость.
  6. Distributed Tracing (Jaeger, Zipkin) – мониторинг взаимодействий между сервисами.

Пример на Python (FastAPI + Kafka):

python
from fastapi import FastAPI
from aiokafka import AIOKafkaProducer

app = FastAPI()

@app.on_event("startup")
async def startup_event():
    app.kafka_producer = AIOKafkaProducer(bootstrap_servers='kafka:9092')
    await app.kafka_producer.start()

@app.post("/event")
async def send_event(data: dict):
    await app.kafka_producer.send("events_topic", value=data.json().encode())
    return {"status": "event_sent"}

Ключевое: слабая связанность, независимое развертывание, отказоустойчивость.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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