2012-05-01 15 views
11

間childprocess.forkとの違いは何だ簡単な質問cluster.fork

  1. は、私がcluster.forkに引数を渡すことができますが

  2. は私がchild_process.forkによって作成子プロセスに同じポートまたはunixsockで聴くことができ

+6

cluster.forkは私を笑わせ、childprocess.forkは作成しません。 – dgnorton

答えて

11

ドキュメント:child_process.forkcluster.forkを読んでください。

cluster.fork()child_process.fork()の違いは、単にクラスタでTCPサーバーをワーカー間で共有できることです。 cluster.forkchild_process.forkの上に実装されています。

http://nodejs.org/api/cluster.html


1.私は、ドキュメントに応じない

をcluster.forkに引数を渡す、とすることができます

> var cluster = require('cluster') 
undefined 
> cluster 
{ isWorker: false, 
    isMaster: true, 
    fork: [Function], 
    _startWorker: [Function], 
    _getServer: [Function] } 
> cluster.fork.length 
0 

function's length formaの数ですlパラメータ)。代わりにmessage passingを使用してください。

2.私はcluster.forkchild_process.forkの上に実装されているので、

おそらくそうchild_process.forkによって作成子プロセスに同じポートまたはunixsockで聴くことができます。ただし、の理由があり、同じポートでリッスンする場合は、cluster.forkが既に存在します。

+0

ワーカー間でサーバーを共有していますか? –

+0

更新された質問 –

+0

更新された答え:) –