如何检测Azure角色中节点之间的时钟偏差?

时间:2012-10-15 14:13:34

标签: azure p2p azure-storage azure-web-roles azure-worker-roles

我有一个时间敏感的操作,需要知道其他计算机之间的时钟偏差,和/或防止这样的事情。如何检测或防止时钟偏差?

在我的情况下,我正在为Azure Blob写一个压缩的日期时间戳。如果不同的节点会以不同的方式对日期时间戳进行解释(因为它可能在闰日或闰秒期间发生),那将是一种灾难。


更多信息

我正在尝试检测本地节点当前时间的时钟偏差。

每个节点都会将时间敏感信息写入Blob / Table。如果时间戳早于X,则会发生某些操作。如果时间不同步,数据可能会丢失或损坏。

可能的解决方案

也许我可以让每个节点定期将其当前日期写入blob存储(32字节),然后在例行的基础上查询。

1 个答案:

答案 0 :(得分:2)

有一些.NET NTP客户端API可以告诉您NTP时间服务器上本地节点时间和时间之间的偏差。例如:

您可以使用NTP客户端在Blob中存储本地时间和偏差。当您在另一个节点上读取blob时,您可以计算该节点的本地时间和偏斜,并将其与blob的存储时间和偏斜进行比较。

相关问题