2016-11-21 32 views
1

我使用socket.io 1.4,我想知道,在这种情况下会发生什么: 客户机就会像这样:Socket.io数据丢失时,上网速度下降

Socket.emit('test',data); 

的客户端不发出3到服务器,但突然互联网速度下降,这些发射可能无法到达服务器 但过了一段时间,互联网速度再次上升,但会发生以前失败的发射? 他们会自动再次发射? 我应该如何处理

回答

0

Websockets使用TCP,这通常是一个可靠的协议。 “互联网速度下降,我失去了一些信息,并不完全是这样的事情。”如果某些消息丢失,它们将在TCP级别自动重新传输。如果重传完全失败,连接将被重置。

所以你真正要问的是socket.io如何处理这个问题。答案是它有一定数量的重新连接逻辑,并且您可能还希望在重置时监视连接(为套接字上的disconnect事件挂接侦听器),如果您想采取一些额外的操作(如通知用户)。