socket io node js 获取服务器时间每一秒性能
socket io node js to get server time every one second performance
我想在我的网页上显示实时服务器时间,想知道我是否可以为此定期(每 1 秒)使用 socket.emit?如果我确实使用它,对性能有何影响?
或者,我可以简单地从服务器获取一次时区,然后使用浏览器的日期对象获取当前时间并将时区转换为实时显示。但是,在这种情况下,我假设我的服务器的日期时间设置配置正确。
基本上,我只想知道当我使用 setInterval
每 1 秒 运行 一个 socket.emit 时对 server/client 的性能影响是什么
不断发送服务器时间没有意义。只需计时一个往返数据包,发送一次服务器时间,加上传输时间,然后将服务器时间与本地时间进行比较以创建偏移量。然后,从那时起就使用本地时间+偏移量。它至少会像不断发送服务器时间一样准确,并且会更有效率。
想法是客户端时钟和服务器时钟 运行 的速度相同,因此您只需要知道两者之间的偏移量,然后就可以使用客户端时钟加上偏移量。
每秒向一个客户端发送一条小消息对性能的影响可能没什么大不了的,但是如果您连接了很多客户端,它可能会开始变得很重要,并且可能会进一步导致每个客户端之间的延迟发送数据包因此导致发送时间不那么准确。
我想在我的网页上显示实时服务器时间,想知道我是否可以为此定期(每 1 秒)使用 socket.emit?如果我确实使用它,对性能有何影响?
或者,我可以简单地从服务器获取一次时区,然后使用浏览器的日期对象获取当前时间并将时区转换为实时显示。但是,在这种情况下,我假设我的服务器的日期时间设置配置正确。
基本上,我只想知道当我使用 setInterval
每 1 秒 运行 一个 socket.emit 时对 server/client 的性能影响是什么不断发送服务器时间没有意义。只需计时一个往返数据包,发送一次服务器时间,加上传输时间,然后将服务器时间与本地时间进行比较以创建偏移量。然后,从那时起就使用本地时间+偏移量。它至少会像不断发送服务器时间一样准确,并且会更有效率。
想法是客户端时钟和服务器时钟 运行 的速度相同,因此您只需要知道两者之间的偏移量,然后就可以使用客户端时钟加上偏移量。
每秒向一个客户端发送一条小消息对性能的影响可能没什么大不了的,但是如果您连接了很多客户端,它可能会开始变得很重要,并且可能会进一步导致每个客户端之间的延迟发送数据包因此导致发送时间不那么准确。