我想播出一条消息,以每个客户端每秒(想想自定义心跳机制)。SocketIO广播太快
所以应用的NodeJS开始,创建插座,当我从客户端连接应用程序中的心跳消息被广播。我仍在开发客户端应用程序,这意味着始终打开F5并重新加载应用程序。新的客户端SocketIO连接是在加载时创建的,这会导致心跳消息以高于1个消息/秒的速度进入客户端应用程序。
没有什么特别之处代码 - 服务器端:
var server = http.createServer(app);
var io = require('socket.io').listen(server);
server.listen(8080);
io.sockets.on('connection', function(socket) {
...
setInterval(function() {
console.info('broadcasting heartbeat');
socket.broadcast.emit('heartbeat', /* custom heartbeat*/);
}, 1000);
...
});
客户端:
var socket = io.connect('localhost', { 'reconnect': false, port: 8080 });
socket.on('heartbeat', function(data) { console.log('heartbeat'); });
任何人可以给我一些建议什么是错的?由于
试着提高'setInterval()'毫秒 – Gntem 2013-03-26 21:24:19
哪里?我不想控制客户端的速度。服务器端的 – 2013-03-26 21:26:47
。尝试解释某种自定义心跳是什么。为什么'socket.io'事件不适合你的应用程序?你使用'心跳'的方式最终每秒钟都会通过一条消息来冲击客户端。 – Gntem 2013-03-26 21:37:31