node.js - 共享进程之间的套接字

时间:2011-12-13 13:32:13

标签: sockets node.js

我读过可以在进程之间共享套接字。这在Node.js中也可以吗?

我在node.js中看到了集群api,但这不是我想要的。我希望能够在一个过程中接受连接,也许发送&读了一下,过了一会儿就把这个套接字传递给另一个完全独立的node.js进程。

我已经可以用管道做到这一点,但我不想这样做,因为它没有直接读/写套接字本身那么快。

有什么想法吗?

更新 我在node.js文档中找到了以下条目:

new net.Socket([options]) #
Construct a new socket object.

options is an object with the following defaults:

{ fd: null
  type: null
  allowHalfOpen: false
}
fd allows you to specify the existing file descriptor of socket. type specified underlying protocol. It can be 'tcp4', 'tcp6', or 'unix'. About allowHalfOpen, refer to createServer() and 'end' event.

我认为可以将“fd”属性设置为套接字的filedescriptor,然后用它打开套接字。但是......如何获取套接字的filedescriptor并将其传递给需要它的进程?

感谢您的帮助!

2 个答案:

答案 0 :(得分:1)

目前无法做到这一点,但我已将其作为功能请求添加到节点问题页面。

<强>更新 与此同时,我为此编写了一个模块。您可以在此处找到它:https://github.com/VanCoding/node-ancillary

答案 1 :(得分:0)

您可能想看看hook.io

  

hook.io是一个基于node.js构建的分布式EventEmitter。除了提供简约事件框架外,hook.io还提供了丰富的钩子库网络,用于管理各种输入和输出。