2

我将 Socket.io 与 Node.js 一起使用,并且有一个每秒发出消息的进程。基本上,我有一个看起来像这样的间隔:

setInterval(function(){
 socket.emit('message', msg);
}, 1000);

当我只使用 xhr-polling 时,轮询非常零星。有时它的轮询相当准确,大约 1.0 秒或 1.01 秒或 999 毫秒。然后其他时候,它会像 200 毫秒或 1.5 毫秒等。

我已经删除了所有可能导致服务器延迟的逻辑,并且只是发出静态数据,但它仍然非常零星。

关于更好地处理这个问题的任何想法会更准确吗?

谢谢!

4

1 回答 1

0

我使用 Socket.io 构建了几款游戏,并在服务器上以每秒 30 帧的速度运行,并将信息更新推送到所有客户端,取得了很好的效果。我记得当客户端不支持套接字时遇到问题(回退到闪存) - 似乎从客户端发送的数据几乎是立即发送的,但从服务器发送的数据将如您所描述的那样(零星)。

于 2012-10-16T16:11:15.020 回答