Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
Websocket 通常是通过从 http 升级协议来完成的——但即便如此——它也是(直接)位于 TCP 之上的一层。
鉴于此 - 我可以期望在 websocket 下使用单个 TCP 连接多长时间?该连接多久需要更换一次(所有这些都不需要客户端/服务器知道)。
正如 Joakim Erdfelt 评论的那样,没有办法知道 TCP 连接的确切超时值,因为它是一个可以在参与连接的每个系统上单独配置的值。
但请注意,TCP 连接通常仅在长时间没有通信时才会断开。您可以通过定期发送小的、无意义的保持活动消息来防止这种情况发生。
在我当前的应用程序中,我通过每 10 秒 ping 一次客户端来执行此操作。这样做的好处是我还可以很好地统计网络延迟。