2017-04-13 52 views
0

我正在构建一个有两个进程的系统。在两个进程之间传递消息

过程1
这一过程实际上是一个Node.js程序。这个过程实际上是一个处理传入请求的Web服务器。

过程2
这一过程实际上是一个C++程序。

这两个过程在启动时自动与rc.local

帮助开始现在,Process 1有应传递到Process 2一些具体要求。

例如,如果在Process 1路线/enqueue接收与JSON体有效载荷的发布请求,Process 1应字符串化的JSON,并传递给Process 2

Process 2收到JSON时,它应该杀死一个工作者线程,并开始一个新的线程与JSON执行实际的任务。工作线程应该不论工作者线程是否仍在处理以前JSON

杀死如果这两个进程是Node.js应用程序,我可以从Process 1分叉Process 2并用下面的代码。

process.on('message',function(message){ 
    //implementation 
} 
... 
process.send(data); 

但我的第二个过程是一个C++应用程序。

有关如何实现它的任何想法?

注意:在标记此问题之前,请记住我并不寻找完整的代码。我只需要关于如何去做的想法。

+0

通过FFI看看MPI(例如OpenMPI) – OMGtechy

+0

您可以使用域TCP套接字来转换messge,然后解析并在您的cpp进程中工作吗? –

回答

1

您不能为此使用Nodejs消息/事件工具,因为它是特定于Node的。

您需要使用操作系统的通信设施,例如Unix,TCP,UDP套接字或两个进程都可以通信的事件系统,如Redis或ZeroMQ。

+0

刚刚检查了ZeroMQ。似乎很有希望。将尽快尝试 –

相关问题