gpt4 book ai didi

node.js - 如何在 socket.io-client 上使用集群?

转载 作者:搜寻专家 更新时间:2023-10-31 23:20:26 24 4
gpt4 key购买 nike

我想在两端(服务器端和客户端)都使用集群。我在服务器端取得了成功,但在客户端无法做到。我在(服务器端和客户端)都使用 node.js。

我在服务器端使用下面的代码

var express = require('express'),
cluster = require('cluster'),
sio = require('socket.io');
var port = 3000,
num_processes = require('os').cpus().length;
if (cluster.isMaster) {
for (var i = 0; i < num_processes; i++) {
cluster.fork();
}
} else {
var app = new express();
var server = app.listen(port),
io = sio(server);
io.on('connection', function (client) {
client.on('evnt', function (data) {
console.log('evnt' + process.pid, data);
});
});
}

在客户端这一个

var url = 'http://localhost:3000/';
var socket = require('socket.io-client')(url);
socket.on('connect', function () {
console.log('Connected with ', url);
setInterval(function () {
socket.emit('evnt', {sham: 'sakdf'});
}, 500)
});
socket.on('disconnect', function () {
console.log('Disconnected');
});

最佳答案

客户端不需要集群模块,我们可以根据需要创建多个进程或子进程。我们在服务器端使用集群,因为我们必须在同一个 IP 和端口上绑定(bind)多个进程。

关于node.js - 如何在 socket.io-client 上使用集群?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38974360/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com