Все относительно. Например в случае построение инфраструтуры на докере, цена сопровождения множества сервисов не намного дороже решения "все в одном". С монолитом можно делать прототипы, которые трудно скейлить. А сложная архитектура имеет все шансы не дожить до продакшна.
МСА дороже Монолита )
Всегда на старте и чаще в последствии:
- дополнительные компетенции (тот же докер) у разработчиков
- для каждого сервиса свой pipeline для сборки и деплоя
- вместо обращения к методу внутри монолита у нас появляется сетевое взаимодействие - это уже снижение производительности
- каждый сервис - отдельная БД - это отдельные, дополнительные расходы на железо
- диагностирование и исправление ошибок - усложняется (потому что появляется большое количество мест, где может сломаться)
- решение вопросов обратной совместимости, добавление асинхронности взаимодействия и т.д.
Все относительно, вы правы. Мы перешли на микросервисную архитектуру, у нас десятки команд, у каждой команды несколько сервисов, обновления каждый день идут
Доп расходы: есть отдельная инфраструктурная команда, которая поддерживает все это добро (очень дорогие специалисты), и не делают ничего продуктового