这是我们正在做的事情:
我们使用 Socket.io 来广播我们的事件。我们遇到了代理和/或防火墙的问题,所以我们只使用了带有 XHR-Polling 的 socket.io,而不是 Websockets。它运行良好,但我们的很多用户都在使用我们的智能手机应用程序,或者互联网连接不佳。有时,尽管他们仍然连接到我们的节点服务器,但他们从未收到广播事件。因此,我们添加了一个额外的长轮询系统,它每隔 X 秒查看一次您从 socket.io 收到的内容,并为您提供您错过的事件。
现在,我们在 Node 服务器上使用 SSL,并且我们能够再次启用 websockets 而不会被防火墙阻止。
问题是:我们额外的长轮询系统在启用 websocket 的情况下仍然有用吗?如果您的互联网连接不好,是否有可能错过 websockets 事件?或者我们应该在断开/重新连接的情况下使用它吗?
TL;DR:如果您的互联网连接不好,是否有可能错过 websockets 事件而没有断开连接?
谢谢