简体   繁体   English

Node.js集群模块

[英]Node.js cluster module

please help. 请帮忙。 I'm using nodejs cluster module: http://nodejs.org/docs/v0.6.18/api/cluster.html . 我正在使用nodejs集群模块: http ://nodejs.org/docs/v0.6.18/api/cluster.html。 I have the following code: 我有以下代码:

run.js run.js

var cluster = require('cluster');

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

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 ....

All workers listen 80 port. 所有工人都听80端口。 Each connection serves a random worker(?). 每个连接为一个随机工作器(?)服务。 Can I switch worker, where user has connected? 我可以在用户连接的地方切换工作人员吗?

sorry my bad english 对不起,我英语不好

If you really needed to switch you could use sockets / socket.io to communicate between your clusters and send your work around. 如果确实需要切换,则可以使用sockets / socket.io在群集之间进行通信并发送工作。

Otherwise, you can't. 否则,您将无法。 But just curious - why would you want to? 但只是好奇-您为什么要这么做?

You should look into WebRTC which enables peer-to-peer connection which is great for multi-player games. 您应该研究WebRTC,它启用对等连接,这对多人游戏非常有用。

My 2 cents. 我的2美分。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM