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

Apu*_*ngh 0 architecture microservices

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

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

Zal*_*oza 5

我可以问一下,当您根本不打算分发它时,为什么还要费心构建一个分布式系统?

人们使用消息队列或休息的方式是将每个微服务解耦到自己的网络服务器中,这样您就可以将它们部署到多个服务器上,并且它们仍然作为一个单元并且可以正常通信。

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

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

然而,既然你所有的代码都在同一个地方,一个函数调用不会更快吗?

我推荐给你。

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

每当您准备好部署到云分布式环境时。然后再次分裂回来。