用户脱机/联机时的套接字断开确认时间延迟

时间:2019-02-20 13:16:34

标签: node.js sockets websocket socket.io pooling

我们正面临Internet交换案例中的套接字问题。 例如:用户连接到Internet A ,并将Internet切换到网络 B 。 当用户断开连接时,套接字会花一些时间触发socket.disconnect()事件,但与此同时,用户会使用新的socket_id(在切换网络后)再次连接到套接字。

用户重新连接后,我们还收到带有旧socket_id的Socket.on('disconnect')事件,但事实并非如此。因为用户已经重新连接。

之所以这样做,是因为我们必须管理套接字上用户的重复会话。

是否可以在用户同时重新连接的同时不接收任何断开事件?

我们在服务器端使用以下配置

  1. 具有池和Websocket的套接字库2.1.1
  2. 具有单线程/多线程套接字的节点服务器。

在具有 Pooling 的单线程中,在极少数情况下,我们面临上述问题。但是在多线程套接字服务器中,我们每次都面临这个问题。

但是在带有 Websocket 的多线程中,在极少数情况下,我们会遇到上述问题,而在单线程套接字服务器中,每次都会遇到此问题。

是否可以增加套接字响应时间? 套接字在连接用户之前应该先触发断开队列吗? 在单/多线程套接字中将带有Pooling或websocket的套接字与哪种套接字一起使用是最佳实践?

0 个答案:

没有答案