2013-04-17 7 views
5

node.js内のforkedプロセスにsocket.ioソケットを渡す方法があるか、forkされたプロセスでsocket.ioソケットを再構築する方法があるのだろうか? ?node.js forkされたプロセスにsocket.ioソケットを渡す

child = require("child_process").fork("worker.js") 
io.sockets.on("connection", function(socket){ 
    child.send("socket", socket); //this definitely fails now 
}) 
+1

「クラスタ」モジュールについてはどうですか?クラスタ化したい場合。 [このリンク 'socket.io' + 'express' clustering sample](https://gist.github.com/nulltask/1877289) –

+0

クラスタモジュールを使用してforkを実行できます – user568109

答えて

0

ソリューション:あなたはあなたが受け取る/イベントを送信することができるようになりますそれでsocket.io-Redisの

のexistanceについて知って幸せになります使用Redisの

イムは確か(あなたのコード(プロセスまたはサーバー)の複数のインスタンス間で共有することができます。

  1. 垂直(マシンごとのスレッド数を増やす)
  2. 水平 (複数のマシンaccross多くの "マスター" を展開)
:あなたが拡張することができます。これにより Read more : socket.io-redis (Github Repo.)

There is an example app at github

これは、Express.js、Socket.IO 1.xとsocket.io-redisを一緒に設定する方法を示す を示す非常に単純なNode.JSクライアント/サーバーアプリケーションです。

これは、スケール方法を理解するための出発点として非常に便利です。 Socket.IO RealTime複数のサーバープロセスを必要とするアプリケーション。 複数の socket.ioインスタンスを異なるプロセスまたはサーバーで実行して、すべて ブロードキャストしてお互いにイベントを送信できるように、レディスはストレージポイント(アダプタ)として使用されます。

関連する問題