gpt4 book ai didi

http - Websocket - 客户端应该发送 ping 帧吗?

转载 作者:可可西里 更新时间:2023-11-01 15:17:40 25 4
gpt4 key购买 nike

正如标题所暗示的,Ping 帧应该只从服务器发送,还是让两个端点都发送它们更好?如 Websocket RFC 中所述:

NOTE: A Ping frame may serve either as a keepalive...

因此,通过让一个端点发送 ping 请求,它应该保持连接打开,对吗?

上一行的第二部分是这样的:

or as a means to verify that the remote endpoint is still responsive.

我是 websockets 概念的新手,但如果从服务器关闭连接,客户端不会收到通知吗?

最佳答案

考虑服务器刚刚消失的情况,也许它崩溃了。谁或什么会通知客户这件事?或者说靠近服务器的网络链接中断了很长时间,以至于当它恢复时,服务器已经完全忘记了这个客户端。谁或什么会告诉客户?

存在三种可能:

  1. 客户端不需要检测连接丢失。在这种情况下,您无需执行任何特殊操作。

  2. 客户端已经有一些方法可以检测到连接丢失。例如,如果连接在一段时间内处于空闲状态,客户端可以发送应用程序级查询,如果没有响应或查询失败则超时。

  3. 客户端需要检测连接丢失但没有现成的方法来执行此操作。在这种情况下,使用 ping 很有意义。

在典型的查询/响应协议(protocol)中,客户端通常不需要 ping 服务器,因为它可以发送一些具有相同效果的查询。除非 websocket 之上的协议(protocol)层支持服务器以某种方式查询客户端,否则服务器通常只有两个选择:使用 ping 检测丢失的连接或断开空闲客户端。

关于http - Websocket - 客户端应该发送 ping 帧吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35184909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com