首页 > 解决方案 > node.js POST 请求到另一台服务器

问题描述

我有一个 node.js 应用程序(假设是应用程序 1),它生成虚拟数据并将数据推送到 localhost:3000 的 mongodb。此应用程序是使用 node.js、express 和 mongodb 创建的。

在另一个应用程序(应用程序 2)中,我使用的是 node.js、express 和 mqtt。在这个应用程序中,我想收集应用程序 1 生成的数据,这个应用程序在端口号 3001 上运行。

我的问题是,如何将数据从应用程序 1 发布到应用程序 2,或者如何将数据从应用程序 1 获取到应用程序 2?

标签: node.jsexpresspost

解决方案


这听起来像是 TCP 套接字的工作。

问题是,如果您想将数据送到其他地方,您需要先打开应用程序之间的连接,然后您才能在它们之间进行推送(就像聊天应用程序一样)。

乐趣从何开始。实施时有许多选项可供选择:

  1. 直接 TCP 连接 (Pub/Sub) - 在其中实现 TCP 服务器App1并允许App2连接到它(参见net)。
  2. Pub/Sub Server - 与第一个类似,但您在它们之间使用了某种中间体。这很好,因为App2不必直接被迫App1(例如,参见Redis pub/sub
  3. 队列- 如果您的数据是有状态App2的,并且无论它是否停机一段时间,生成的数据的每一个速度都必须达到,这是一个选择。队列将被填满并等待App2连接回来,然后队列将开始清空(例如,参见RabbitMQ )

推荐阅读