2

请帮忙。我正在使用 nodejs 集群模块:http ://nodejs.org/docs/v0.6.18/api/cluster.html 。我有以下代码:

运行.js

var cluster = require('cluster');

if (cluster.isMaster) {
    require('os').cpus().forEach(function () {
        cluster.fork();
    });
} else {
    require('./worker.js');
}

worker.js

var http = require('http'),
    connect = require('connect'),
    sio = require('socket.io'),
    // create server
    app = connect(),
    server = http.createServer(app);

server.listenPort(80);

var io = sio.listen(server);
// io.sockets.on ....

所有工作人员都监听 80 端口。每个连接都服务于一个随机工作人员(?)。我可以在用户连接的地方切换工作人员吗?

对不起我的英语不好

4

2 回答 2

1

如果你真的需要切换,你可以使用 sockets / socket.io 在你的集群之间进行通信并发送你的工作。

否则,你不能。但只是好奇——你为什么要这么做?

于 2012-05-23T17:39:50.860 回答
0

您应该研究 WebRTC,它支持点对点连接,这对于多人游戏非常有用。

我的 2 美分。

于 2013-10-05T07:18:24.577 回答