Как растут большие приложения и когда нужно разбивать монолит на сервисы.
🏢 Монолит
✅ Плюсы
Просто начать
Один деплой
Лёгкий дебаг
❌ Минусы
Деплоить всё целиком
Нельзя масштабировать часть
Страх рефакторинга
Монолит — приложение, где весь код развёртывается как одна единица.
┌──────────────────────────────────┐
│ Монолит │
│ ┌───────┐ ┌───────┐ ┌────────┐ │
│ │ Users │ │Orders │ │Payment │ │
│ └───────┘ └───────┘ └────────┘ │
│ ↕ одна БД │
└──────────────────────────────────┘✅ Просто начать — один репозиторий, один деплой ✅ Просто разрабатывать — нет сетевых вызовов между компонентами ✅ Легко дебажить — один стек вызовов, один лог ✅ Транзакции — легко делать атомарные операции в одной БД
❌ Деплой всего из-за одной строчки — поменял кнопку → нужно задеплоить всё приложение ❌ Страх изменений — "а вдруг что-то сломается" ❌ Масштабирование — нельзя масштабировать только нагруженную часть ❌ Технологический стек — всё на одном языке/фреймворке
Вывод: монолит — не плохо. Это правильный старт для большинства проектов.