我正在构建一个应用程序,随着它的发展,我学到了更多知识,并且随着它的发展而发展。
此刻,我已将我的应用程序分成3个单独的部分
这些单独的nodejs应用程序中的每一个都具有在不同服务器上执行的功能。
我启动了另一个包含共享代码的小程序包/应用程序,然后将其包含在依赖关系中:
"shared": "file:../shared",
这样我就可以随时通过任何应用访问我的模型:
let User = require('shared/models/user')
我发现自己正在运行以下命令以在开发模式ALOT中升级到最新模型
yarn upgrade shared
我仍在学习最佳实践,所有这些……这真的是最好的方法吗?我是否应该做其他事情以节省更多时间?
任何帮助将不胜感激!
答案 0 :(得分:0)
在微服务中共享相同的模型不是一个很好的架构决策。微服务应该拥有自己的模型,而共享与拥有相反。
这并不意味着一个用户不能在多个微服务中拥有用户,但不能拥有同一模型。您可以使用集成模式,即Anti-corruption layer。长话短说,规范模型包含所有字段,而远程模型仅包含所需的字段子集。