Я создаю приложение, и по мере его роста я узнаю больше и расту вместе с ним.
На данный момент я разделил свое приложение на 3 отдельные части
каждое из этих отдельных приложений nodejs имеет функцию, которую нужно выполнять, находясь на разных серверах.
Я запустил еще один небольшой пакет/приложение, которое включает в себя общий код, а затем включил его в зависимости как таковые:
"shared": "file:../shared",
так что я могу получить доступ к своим моделям из любого приложения, когда захочу:
let User = require('shared/models/user')
Я обнаружил, что запускаю следующую команду для обновления до последних моделей в режиме разработки ALOT
yarn upgrade shared
Я все еще изучаю лучшие практики и все такое... действительно ли это лучший способ сделать это? Должен ли я делать что-то еще, чтобы сэкономить еще немного времени?
Любая помощь будет принята с благодарностью!
Совместное использование одной и той же модели микросервисами — не очень хорошее архитектурное решение. Микросервис должен владеть своими моделями, а совместное использование — это противоположность владения.
Это не означает, что нельзя иметь пользователей в нескольких микросервисах, но не в одной и той же модели. Вы можете использовать шаблон интеграции, например Уровень защиты от коррупции. Короче говоря, каноническая модель содержит все поля, а удаленные модели содержат только необходимое подмножество полей.