我被要求在我们的网站上显示正确的时间,但我认为这是毫无意义的,因为“正确”的解释可以多种多样。
我们目前的方法一定会产生不准确的时间,因为它使用了服务器控制呈现JavaScript,该JavaScript在使用服务器的datetime作为参数创建JavaScript中的时钟对象时在onload上运行,最终呈现在页面上并开始递增时钟。由于服务器处理、网络延迟和客户端性能(有很多其他东西可以在onload上运行),时钟最终与实际服务器时间相差很大,而与客户端PC相比则无从得知。
为了显示正确的时间,我可以;
- Use local PC time and pass new Date() to the JavaScript clock object. Pros: Should be as close to the PC clock as possible. Cons: Not sure how accurate the PC clock is let alone in which timezone.
- Use web service for TCP request to NTP server to update clock on web page. Pros: If local PC also sync d to NTP will be accurate and best possible match. Cons: Will have to handle all the timezone adjustments relative to our servers. If PC clock is out will still have mismatch.
我是实施自己的Web服务还是使用类似这样的东西; Earth Tools 或者世界时间Web服务(编辑: 链接已删除 - 现在404)?
这是来自Jon Galloway关于原子钟网络服务的博客文章,相当久远,但是在我谷歌搜索时排名很高,他并没有得出结论。
希望我能赢得与管理层的争论,证明如果你不在那个时区,与我们的服务器时钟(GMT)同步毫无意义,为什么我们甚至需要匹配本地电脑。
我有没有错过任何角度?