Вопрос по architecture, npm, node.js &#8211 Узел Модульная Архитектура

Я создаю приложение nodejs, которое сейчас довольно большое. В попытке избежать применения монолитного узла я пошел по архитектурному маршруту более модульной системы, разбив несколько компонентов на отдельные модули npm. Они публикуются с использованием npm и устанавливаются в зависимые модули. У меня есть около 6 различных модулей (которые я хотел бы выделить больше), и теперь стало трудно управлять пакетами.

Проблемы являются:

быстровозводимые дома проекты цены

модульные мини дома для постоянного проживания

Существует вложенная зависимость, поэтому, если я меняю модуль A, а модуль B зависит от модуля A, а модуль C зависит от модуля B, то при обновлении модуля AI необходимо опубликовать его новую версию, что означает, что мне нужно обновить его в модуле. B, что означает, что мне также нужно опубликовать это, и, наконец, мне нужно установить эту новую версию в модуле A . вы можете увидеть, где это может быть больно. Более того, обновление версий во всех файлах package.json выполняется вручную и поэтому подвержено ошибкам, а ожидание каждой публикации отнимает много времени.Модули могут совместно использовать зависимости npm, поэтому иногда при обновлении пакетов возникают конфликты. Чем больше модулей, тем выше вероятность конфликта.

модульные лестницы в частном доме

Выгоды в том, что у нас очень модульная система, в которой библиотеки можно легко использовать повторно, и существует четкая иерархия модулей, поскольку не может быть никаких циклических зависимостей.

Возможные решения являются:

Монолит - Управлять зависимостями как одним приложением в одном репозитории, при этом каждый модуль просто становится сервисом. Это означает, что требуется только одно обновление, и все модули API будут синхронизированы. Однако ссылаться на библиотеки в коде может быть немного сложно (так как я считаю, что на них нужно ссылаться по отношению к локальному файлу), я не уверен, как можно применить структурную иерархию между модулями и повторное использование кода Сложнее с модулями вне хранилища.

Microservices - сделать каждый модуль микро сервисом. Это сохраняет все преимущества модульной системы, но я обеспокоен тем, что она значительно усложнит сборку, и управление всеми сервисами само по себе станет работой на полный рабочий день.

Продолжайте идти - Разработайте способ сохранить текущую архитектуру, но избавьтесь от необходимости загружать обновления и т. Д. Может быть, скрипты для обновления версий и сокращения, чтобы обеспечить правильные зависимости. Я думаю, что это было бы сложно и потенциально привело бы к тому, чтобы стать монолитной системой другого сорта.

Вариант 1 кажется мне наиболее управляемым, но я не хочу терять модульную структуру, если не буду этого делать.

Это довольно широкий вопрос, но любые предложения советы комментарии были бы действительно полезны.

модульный дом хаус

окпд 2 модульные здания

быстровозводимые дома из сип панелей

Комментарии запрещены.

Навигация по записям