您好,我正在侦听来自连接到一个端口和ip的多个客户端的多个请求。我将从客户端接收到的数据发布到另一台服务器。我遇到的问题是,随着客户数量的增加,延迟时间也在增加。我认为我无法正确处理来自多个设备的数据。我真正想要的是,如果我正在侦听10个客户端/设备,则数据应同时或并行发布到另一台服务器。不应有任何延迟。我希望数据应该并行处理
目前这是我的代码的样子
var request = require('request');
var net = require('net');
var HOST = '172.xx.x.xx';
var PORT = 52xx;
var cluster = require('cluster');
var numCPUs = require('os').cpus().length;
if (cluster.isMaster) {
// Fork workers.
for (var i = 0; i < numCPUs; i++) {
cluster.fork();
}
cluster.on('death', function(worker) {
console.log('worker ' + worker.pid + ' died');
cluster.fork();
});
} else {
net.createServer(function(socket){
console.log('received connection...');
socket.on('data', function(data) {
var options = {
uri: 'http://demourl/api',
method: 'POST',
body: {
message:data.toString()
},
json: true
};
console.log(data.toString());
request(options, function (error, response, body) {
});
});
}).listen(PORT, HOST);
}