我的代码 不断用 setinterval 取 redis 的数据 (redis在另一个服务器) 人数有 几十个人同时访问造成redis服务器的网络流出带宽(bit/s) 带宽跑满
是不是哪里应该做个缓存或者什么 几十个人同时访问就造成了 几十个链接都去请求REDIS 人越多带宽指数级增加
//连接事件
io.sockets.on('connection', function (socket) {
//console.log('有新用户进入...');
//叠加当前在线人数
onlineCount++;
var domain = socket.handshake.headers.origin;
if(typeof domain == 'undefined'){
return;
}
socket.volatile.emit('onlinenums', {polotime: res[2]});
});
});
}
var once = setTimeout(refresh,100);
var tweets = setInterval(refresh, 2000);
console.log('当前用户数量:'+onlineCount);
//客户端断开连接
socket.on('disconnect', function() {
clearInterval(tweets);
if(onlineCount > 0 ){
//当前在线用户减一
onlineCount--;
console.log('当前用户数量:'+onlineCount);
}
});
});
//启动HTTP服务,绑定端口3000
app.listen(3000, function(){
console.log('listening on *:3000');
});