我有一个16核64 gig服务器。我使用node.js进行基于微服务的架构。有大约十几个微服务。似乎很适合在同一台机器上部署所有十几个微服务
通常人们在REST与Messaging之间进行辩论,而消息通常会获胜。在这种情况下,两者都显得不必要
微服务应该如何通信...比如使用节点js或基于JVM的进程。理想情况下,如果每个微服务都“绑定”到核心,并使用L2或L3缓存与其他微服务进行通信,则会获得最佳性能!超级快。是否可以这样做?
答案 0 :(得分:1)
我想问一下,当您根本不分发分布式系统时,为什么还要打扰呢?
人们使用消息收发的方式是将每个微服务解耦到其自己的Web服务器,这样您就可以将它们部署到多个服务器,并且它们仍然充当一个单元并可以正常通信。
在您的情况下,为什么当所有代码彼此相邻时,您会引导Nodejs服务器十次?
是的,您是对的,使用缓存进行通信将非常快,许多人为此使用redis。
但是,由于所有代码都位于同一位置,因此单个函数调用不会更快吗?
我为你推荐。
将您的应用更改为单个服务器。在这种情况下,请使用函数调用来交流您的模型。
每当您准备部署到云分布式环境时。然后又把我分开。
答案 1 :(得分:1)
使用容器在一个服务器上托管微服务可以很好地工作。 您可以点击此链接了解更多信息 3 Reasons why you should use containers to run microservices