请帮忙 . 我正在使用nodejs集群模块:http://nodejs.org/docs/v0.6.18/api/cluster.html . 我有以下代码:
run.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 ....
所有 Worker 都听80端口 . 每个连接都为随机工作者(?)服务 . 我可以切换用户已连接的工作人员吗?
抱歉,我的英语不好
2 回答
如果你真的需要切换,你可以使用socket / socket.io在你的集群之间进行通信并发送你的工作 .
否则,你不能 . 但只是好奇 - 你为什么要这样?
您应该研究WebRTC,它可以实现点对点连接,这对于多玩家游戏来说非常有用 .
我的2美分 .