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

В чем разница между монолитной и микросервисной архитектурой

Монолитная архитектура

  • Все компоненты приложения работают как единое целое в одном процессе.
  • Проще в разработке и развертывании (один деплой).
  • Масштабируется вертикально (увеличение мощности сервера).
  • Проблемы: сложность поддержки при росте кода, долгие деплои, отказоустойчивость ниже.

Микросервисная архитектура

  • Приложение разбито на независимые сервисы, общающиеся через API (REST, gRPC).
  • Горизонтальное масштабирование (можно масштабировать отдельные сервисы).
  • Гибкость в выборе технологий для каждого сервиса.
  • Проблемы: сложность orchestration (Kubernetеs), distributed tracing, согласованность данных.

Пример:

python
# Монолит (Flask)
@app.route('/api/users')
def get_users():
    return db.query("SELECT * FROM users")

# Микросервис (FastAPI)
@router.get("/users")
async def get_users():
    response = await http.get("http://user-service/api/users")
    return response.json()
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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