是否有更快的方法在节点child_processes&之间交换数据。掌握比ipc?

时间:2018-01-06 12:30:52

标签: javascript node.js multithreading

我目前正在尝试在多线程node.js应用程序中找到主进程和子进程之间进行通信的最佳方法。为此,我设置了一些测试,向子进程发送一个相当大的js对象,并等待它使用相同的对象响应master。

我试图实现的目的是找到最快的解决方案,发送/接收和与child_processes通信或在Node.js中创建线程的方法(共享相同的内存空间和可能的范围,但执行单独的线程)但据我所知,后者是不可能的。

测试发送1000条消息,儿童产卵平均约需100毫秒。

基准

  • IPC 399ms
  • node-shared-cache 350毫秒
  • Socket.io 1523ms
  • fs streams 325ms

1 个答案:

答案 0 :(得分:0)

显然,为stdio创建了2个额外的管道(child - > parent和parent - > child)是最快的通信方式,可能是因为它是一个不间断的连接。我希望通过更大的数据库更加注意差异。

感谢所有回复的人!真的很感激它,它促使我用套接字进行测试,最终不间断的流。