【问题标题】:Node.js microservices, when to use themNode.js 微服务,何时使用它们
【发布时间】:2019-12-27 05:21:27
【问题描述】:

我一直在阅读有关 node.js 提示、技巧和最佳实践的文章。我发现有人提到,从 微服务 的角度真正思考和处理应用程序很方便。我以前玩过这个,但我仍然不太清楚什么时候最好或使用什么标准。

例如,现在我正在开发一个应用程序(不是为了工作,而是我的一个爱好)来记录我读过的书的引用。因此,我编写了带有两个路由的 node.js API:一个 POST 路由记录在云上运行的 MongoDB 实例上的报价,以及一个 GET 路由读取引号。

这是一个单一的应用程序。就微服务而言,“思考”是否意味着我应该编写两个不同的应用程序,一个用于发布,一个用于获取,每个都运行在自己的容器上?

我熟悉 Kubernetes 和 Openshift,因此技术细节不是什么大问题。我关心的是如何决定拆分应用程序,可以说是架构设计的关注点分离。

提前致谢。

【问题讨论】:

  • 谁投了反对票,能解释一下原因吗?这是一个不好的问题吗?我看过详细解释的文章,但总是在理论上,而不是在实际案例中。这是我要问的一个真实世界的例子。我不会不说原因就简单地投票否决,仅此而已。

标签: node.js docker microservices


【解决方案1】:

通常,微服务围绕逻辑上不同的数据和操作片段进行分解。由于您的示例中的 POST 和 GET 都处理相同的数据,并且相互补充彼此的操作,因此将 GET 和 POST 操作分开为单独的微服务对我来说意义不大。

如上所述,您的应用程序足够小,以至于组件之间没有明显的边界,可以进一步隔离以获得更好的灵活性。

或者换句话说,这个服务已经符合微服务的大多数定义,并且不适合进一步分解。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-09-14
    • 1970-01-01
    • 2013-05-08
    • 2019-09-11
    • 1970-01-01
    • 2018-04-25
    • 2021-09-02
    • 2017-05-28
    相关资源
    最近更新 更多