基于WebSockets的远程自治Node.js应用程序之间的全双工消息传递



在循环中没有人,两个端点都是独立的Node.js应用程序,作为独立的服务运行。

端点A负责通过安全web套接字联系端点B,并24/7/365保持该连接。

两个端点都将独立地启动消息(无需人工干预),并且两个端点都将具有API (RESTful或其他)来接收和处理消息。您可能会说,每个端点都是另一个端点的客户机和服务器。

我正在考虑像Sails.js和LoopBack这样的框架(在两个端点上都实现),以及简单地通过ws传递JSON消息,但仍不清楚最惯用的方法是什么。

Web Sockets在连接浏览器等方面有很多开销,因为它们试图与HTTP保持兼容。如果您只是连接一对服务器,一个简单的TCP连接就足够了。您可以使用net模块。

现在,一旦你有了这种联系,你如何开始沟通?你可以麻烦地制定自己的协议,但我不建议你这么做。我发现一个简单的RPC是最简单的。你可以在任何双工流(包括你的TCP套接字)上使用rpc-stream包。

对于我自己的应用程序,我实际上安装了socket。io-client,让我的服务器将其用于RPC。虽然如果我要再做一次,我会使用rpc-stream来跳过设置Web Socket连接所需的所有开销。

相关内容

  • 没有找到相关文章

最新更新