gpt4 book ai didi

javascript - 本地使用 Node.js 时不同的客户端和服务器时间

转载 作者:行者123 更新时间:2023-11-30 20:32:06 24 4
gpt4 key购买 nike

我有一个在本地运行的 Node 服务器,我通过我的网络浏览器连接到这个服务器。我使用 websocket 在客户端和服务器之间进行通信。我想测量向服务器和从服务器发送 websocket 消息的准确时间。我使用 javascript 函数 Date.now(),但问题是在我的结果中,有时消息在客户端发送之前已被服务器接收。我想客户端“时钟”和服务器“时钟”之间存在差异。但是有在同一台机器上。如果能提供解释和资源链接,我将不胜感激。

最佳答案

正如 John Resig 概述的那样 in one of his blog articles javascripts 时间不准确。您可以使用 javascript 访问的时钟仅每隔几毫秒“滴答”一次。这意味着它可能与准确时间相差大约 7 毫秒。现在,如果您的请求花费的时间比这个小时间跨度短(如果它停留在本地主机上,则可能会发生这种情况),它可能看起来像是在发送之前就收到了。

 real time: 1000ms
js time: 1000ms

travel time: 5ms

real time: 1005ms
js time: 998ms // inaccuracy

difference: -2ms

我们无法做任何改进,因为 performance.now() 出于安全原因被禁用。所以我们唯一能做的就是引入网络延迟 :),但时钟时间可能会更慢......

关于javascript - 本地使用 Node.js 时不同的客户端和服务器时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50237531/

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