我有一个node.js应用程序(比方说应用程序1),该应用程序生成虚拟数据并将数据推送到位于localhost:3000的mongodb。此应用程序是使用node.js,express和mongodb创建的。
在另一个应用程序(应用程序2)中,我正在使用node.js,express和mqtt。在此应用程序中,我想收集由应用程序1生成的数据,并且该应用程序在端口号3001上运行。
我的问题是,如何将数据从应用程序1发布到应用程序2或如何将数据从应用程序1发布到应用程序2?
答案 0 :(得分:0)
这是一个非常模糊和开放性的问题。有许多不同的难度,成本和扩展能力可以实现此目的的方法。您可能应该首先缩小问题的范围,以便在发布之前弄清楚您真正需要什么,但是为了简单起见,为什么不尝试从一个节点应用程序到另一个节点应用程序进行简单的POST?
答案 1 :(得分:0)
这听起来像是TCP套接字的工作。
问题是,如果您想推送数据到其他地方,则需要先打开应用程序之间的连接,然后才能在它们之间推送 (就像聊天应用程序一样。)
乐趣从何而来。实施时有很多选项可供选择:
App1
中实现TCP服务器并允许App2
连接到它(请参阅net)。 / li>
App2
不必直接被强制为App1
(例如,请参见Redis pub/sub)App2
,这是一个选择时间。队列将获得填充并等待App2
连接回去,然后队列才会开始清空(例如,请参见RabbitMQ)