Монолит vs микросервисы
«Мы переходим на микросервисы» звучит прогрессивно, но у распределённых систем своя цена. Разбираем, когда какая архитектура оправдана и как меняться без боли.
Монолит
- одно приложение, один деплой, просто тестировать E2E;
- быстрый старт и маленькая команда — идеально;
- при росте: всё связано, правки — миллиметр за миллиметром.
Микросервисы
- независимые деплои и команды со своими зонами;
- цена: сети, согласование контрактов, распределённая отладка;
- оправданы, когда команд несколько и зоны реально разные.
// Декомпозиция по шагам (не «всё разом»)
// 1. выделить независимый сервис (платежи, уведомления)
// 2. перевести трафик через API-шлюз
// 3. только после стабилизации — следующий кандидат
💡
«Monolith-first» — стандарт индустрии: начинайте с монолита, раздражающие границы выносятся по-настоящему. Большинство проектов никогда не доходят до микросервисов — и правильно.
ℹ️
В интервью говорить «микросервисы — серебряная пуля» — красный флаг. Прокачанный ответ называет цену: наблюдаемость, версии контрактов, сетевая отказоустойчивость.