2017-04-13 5 views
0

私は2つのプロセスを持つシステムを構築しています。2つのプロセス間でメッセージを渡す

プロセス1
このプロセスは、実際Node.jsプログラムです。このプロセスは実際に着信要求を処理するWebサーバーです。

工程2
このプロセスは、実際C++プログラムです。

は、両方のプロセスがProcess 1ためProcess 2に渡す必要がありますいくつかの特定の要求がある、今rc.local

の助けを借りて、起動時に自動的に開始されます。

Process 1JSON本体ペイロードとルート/enqueueにPOST要求を受信した場合、例えば、Process 1JSONを文字列化すべきであり、Process 2に渡します。

Process 2JSONを受け取ると、ワーカースレッドを強制終了し、実際のタスクを実行するためにJSONの新しいスレッドを開始する必要があります。両方のプロセスがNode.jsアプリケーションであれば、ワーカースレッドは、関係なく、ワーカースレッドがまだ前JSON

を処理しているかどうかの殺されなければならない私はProcess 1からProcess 2をフォークし、次のコードを使用することもできました。

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

しかし、私の第二の方法はC++アプリです。

これを実装する方法については何か考えてください。

注:この質問にフラグを付ける前に、完全なコードは探していません。私はちょうどそれを行う方法のアイデアが必要です。

+0

FFI – OMGtechy

+0

を介してMPI(OpenMPIなど)を見てください。ドメインTCPソケットを使用してmessgeを変換し、次に解析してcppプロセスで作業できますか? –

答えて

1

この目的のためにNodejメッセージング/イベント機能を使用することは、Node固有のものなので使用できません。

オペレーティングシステムの通信機能(Unix、TCP、UDPソケット、またはRedisやZeroMQなどの両方のプロセスが通信できるイベントシステム)を使用する必要があります。

+0

ZeroMQをチェックしました。本当に有望なようだ。できるだけ早く試してみましょう –

関連する問題