Node.js微服务之间的通信

时间:2015-12-01 12:15:03

标签: json node.js express architecture microservices

我正在使用微服务架构使用Node.js创建一个应用程序。我正在努力寻找节点之间最好的通信方式。我有一个Java背景,所以我能想象的最好的选择就像SOAP,你创建一个代理对象,并通过调用它的方法,通过http发出对远程节点的请求。

目前我只看到像

这样的直接调用选项
http.get("remote-node/api/method1", function(res) {
}).on('error', function(e) {
  console.log("Got error: " + e.message);
});

但我认为这不方便。有更好的方法吗?

感谢。

1 个答案:

答案 0 :(得分:1)

最常见和最简单的方法是使用REST-ish方法来传达您的微服务,您将不得不手动进行通信和服务的发现,这可能会随着系统的发展而变得混乱。您还可以在npm上搜索某些包以进行服务发现和远程过程调用。

我强烈建议使用Studio这是一个微服务框架。它还有一个插件来进行自动集群化(服务发现+ rpc),配置非常简单,这个插件也使用websocket进行通信,这比通过休息方法更轻量级