Общие библиотеки требуют одного языка программирования для всех команд, которые их используют. Это мешает командам выбирать наиболее подходящий технологический стек для своих конкретных нужд, ограничивая инновации и гибкость в выборе технологий.
Общие библиотеки не обеспечивают независимое масштабирование. Если определённые компоненты системы требуют большей производительности или должны масштабироваться отдельно, общие библиотеки не могут решить эти задачи, потому что весь код остаётся тесно связан в одной единице развёртывания.
Общие библиотеки используют ту же модель развёртывания, что и монолитные приложения. Это означает:
Общий код создаёт тесную связь между командами и компонентами:
Хотя общие библиотеки способствуют переиспользованию кода, они жертвуют гибкостью, независимостью и преимуществами масштабируемости, которые дают современные распределённые архитектуры. Организации, стремящиеся преодолеть ограничения монолита, должны рассмотреть микросервисы или другие стратегии декомпозиции, которые обеспечивают независимый деплой, свободу выбора технологий и автономию команд.
Общие библиотеки позволяют независимо масштабировать отдельные компоненты, потому что каждую библиотеку можно развёртывать отдельно от других.
Новый — ещё не проверен сообществом
Вы