处理不准确的系统时钟

jam*_*rio 5 .net time amazon-ec2

我有一个基于Windows的系统,它位于Amazon EC2实例上.存在一个已知问题,即Windows EC2实例在保持系统时间同步方面存在问题.我将随机登录系统,发现我的系统时钟距离几秒钟(不是太大的交易......)到几分钟甚至几小时(显然是一笔巨大的交易).

考虑到我的网站的主要目标是发布安全S3内容的链接,这些内容被严格的时间限制(即有时只需30秒到一分钟)锁定,这对我来说是个大问题.淘宝亚马逊的帮助论坛已经产生了许多答案,这些答案根本不起作用,亚马逊似乎忽略了声称它与Windows相关的问题.无论如何,我决定把事情掌握在自己手中,而不是在亚马逊上等待.

我考虑过的事情:

  • 每小时左右创建一个命中时间服务器列表的服务,获取当前时间,计算偏移量,然后使用此偏移量生成准确的链接.缺点是我需要有大量的时间服务器列表,这样他们就不会阻止我经常点击它们.此外,如果时间在其中一个时段的中间随机固定,我的链接将再次开始中断.
  • 创建Linux EC2实例并找到获取其内部时间的方法.我还没有读过关于他们在EC2中的时间准确度的任何内容,但我不得不假设这个废话更好.
  • 在其他地方托管我的网站有精确的时钟......

还有其他你可以想到的选择,我可能错过了吗?我并不是真的反对任何事情,只有一个例外是用另一种语言重写我的网站以便远离Windows(它目前是.Net MVC应用程序).

提前致谢!

编辑:另外值得注意的是,我不能使用基于referrer的安全性作为我正在使用的插件,使用这些链接并不是100%在某些浏览器中发送引用者.

tot*_*rds 0

如果您选择这样做,您可以尝试在 Windows 实例或 Linux 实例上制作一个应用程序,并且每当您需要知道时间时,都会向如下所示的地方发送 api 请求: http: //worldtimeengine.com/ api/获取当前本地时间。

如果您不能依赖实例的时钟,那么可以从其他地方获取时间:)