【发布时间】:2016-03-05 08:46:41
【问题描述】:
我正在使用微服务架构使用 Node.js 创建一个应用程序。我正在尝试找到节点之间的最佳通信方式。我有 Java 背景,所以我能想到的最佳选择是 SOAP,您可以在其中创建一个代理对象,并通过调用它的方法,通过 http 向远程节点发出请求。
目前我只看到像
这样的直接调用选项http.get("remote-node/api/method1", function(res) {
}).on('error', function(e) {
console.log("Got error: " + e.message);
});
但是我认为这不方便。有更好的方法吗?
谢谢。
【问题讨论】:
-
有很多方法可以做到这一点——从简单的服务之间的 HTTP REST-ish 调用,到更高级的面向消息总线的架构。消息总线可以使服务位置和容错/重试等问题更容易。但我认为您可以做的最重要的事情是抽象出通信,以便您可以随着应用程序的增长替换它 - 从简单的东西开始并不断发展。
-
据我了解微服务,在此架构中不建议使用消息总线。所有节点都需要处理它们的依赖关系和消息传递
标签: json node.js express architecture microservices