想在一台机器上运行十几个微服务

时间:2017-02-17 02:31:45

标签: architecture microservices

我有一个16核64 gig服务器。我使用node.js进行基于微服务的架构。有大约十几个微服务。似乎很适合在同一台机器上部署所有十几个微服务 通常人们在REST与Messaging之间进行辩论,而消息通常会获胜。在这种情况下,两者都显得不必要 微服务应该如何通信...比如使用节点js或基于JVM的进程。理想情况下,如果每个微服务都“绑定”到核心,并使用L2或L3缓存与其他微服务进行通信,则会获得最佳性能!超级快。是否可以这样做?

  1. 将微服务流程永远绑定到核心
  2. 微服务使用L2或L3缓存进行通信 感谢

2 个答案:

答案 0 :(得分:1)

我想问一下,当您根本不分发分布式系统时,为什么还要打扰呢?

人们使用消息收发的方式是将每个微服务解耦到其自己的Web服务器,这样您就可以将它们部署到多个服务器,并且它们仍然充当一个单元并可以正常通信。

在您的情况下,为什么当所有代码彼此相邻时,您会引导Nodejs服务器十次?

是的,您是对的,使用缓存进行通信将非常快,许多人为此使用redis。

但是,由于所有代码都位于同一位置,因此单个函数调用不会更快吗?

我为你推荐。

将您的应用更改为单个服务器。在这种情况下,请使用函数调用来交流您的模型。

每当您准备部署到云分布式环境时。然后又把我分开。

答案 1 :(得分:1)

使用容器在一个服务器上托管微服务可以很好地工作。 您可以点击此链接了解更多信息 3 Reasons why you should use containers to run microservices