gpt4 book ai didi

javascript - Websocket 通信延迟问题

转载 作者:行者123 更新时间:2023-11-30 16:25:15 25 4
gpt4 key购买 nike

关于 websocket 连接的 3 个小问题

  1. 当客户端向服务器发送数据时存在延迟。服务器向客户端发送数据时是有延迟还是即时?

  2. 如果客户端在特定行中以非常快的速度向服务器发送数据 - 比方说 [1, 2, 3],是否有可能由于延迟或其他原因,数据将被接收服务器在不同的行? (比如 [2, 1, 3] )

  3. (与问题 #2 相同,但服务器发送数据时)

最佳答案

  1. 是的,有延迟。它仍然是一个连接,仍然有一个链条可以导航。延迟仅在事情发生变化时才重要,并且考虑到消息到达客户端需要 X 时间,而客户端需要 X 毫秒才能对其执行任何操作,因此很可能在这些毫秒期间状态会发生变化。就像 HTTP 请求(WebSockets 几乎是同一件事)变得“热门”一样,我相信延迟会减少(所有其他条件相同)但它仍然存在。

  2. 不,WebSockets 是通过 TCP 传输的,所以它们是有序的。 UDP 传输是即发即弃的,它不发送任何接收通知,也不使用计时信息重新生成数据包,因此您可以更快地发送消息,但不能对接收、顺序或事件做出任何假设。页面印象是一个很好的例子,说明您实际上并不关心顺序是什么,并且您可能不太关心服务器何时收到此类消息,WebRTC 可能会在 JS 和服务器之间建立 UDP 连接,但该标准仍在不断涌现。目前,WebSockets 通过 HTTP 升级进行连接,这意味着它们是 TCP,其中订单信息和收据确认是一件重要的事情(来回发送更大和更多的消息)。

  3. 同样的答案!这一切都通过 TCP 进行,因此整个行程是一个往返行程,但顺序是有保证的。

关于javascript - Websocket 通信延迟问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34212434/

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