使用Google GData API更新联系人时服务器上的修改时间奇怪

时间:2013-02-28 19:13:29

标签: c# web-services rest google-api gdata-api

我正在尝试为Google通讯录开发同步工具,但我看到了一些奇怪的行为。

简而言之,这就是我的问题:

我发送了在X时间修改联系人的请求 该请求将采用X+1ms.
整个snycing过程需要X+2ms 我会在X+2ms更新我的时间戳 无论出于何种原因,我修改的联系人显示了X+20ms的最后修改时间戳,因此在下一次同步期间将其发送回另一个方向。坏。

我使用的Google GData .NET库是同步的,因此它并不像以太网中的呼叫那样完全无法完成。

这是请求/响应/和通话时间的粘贴箱。

http://pastebin.com/Bw01S3C0

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

有一个鲜为人知的一阶特殊相对论效应可以限制多个时钟在地球表面的同步程度。两个时钟可以完全相互同步,但是三个或更多个时钟不能更精确地同步(如果我从第3年物理学中正确地回忆起数字)大约4或5毫秒。虽然大多数特殊相对论效应是光速c的二阶或三阶,但这是c中的第一阶,因此可以用现代硬件轻松检测到。

答案 1 :(得分:0)

不,你没有。尽管事实上我一直将我的系统时钟同步到同一台服务器,但是我的VPS使这些呼叫落后了20秒。应该早点见到我。

我注意到响应的标题也提前了20秒,所以它并不特定于修改时间。

咄。