【问题标题】:Strange modified times on server when updating contacts using Google GData API使用 Google GData API 更新联系人时服务器上的奇怪修改时间
【发布时间】:2013-02-15 03:06:54
【问题描述】:

我正在尝试为 Google 联系人开发一个同步工具,但是我看到了一些奇怪的行为。

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

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

我正在使用的 Google GData .NET 库是同步的,因此在以太中没有调用尚未完成。

这是请求/响应/和呼叫时间的粘贴箱。

http://pastebin.com/Bw01S3C0

有什么想法吗?

【问题讨论】:

  • 可能是在 服务器 上设置了最后修改时间 - 所以你对时间的想法并不是很相关。还是我错过了什么?

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


【解决方案1】:

不,你不是。尽管事实上我一直将我的系统时钟同步到同一台服务器,但我发出这些调用的 VPS 似乎落后了 20 秒。早该了解我的。

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

呃。

【讨论】:

    【解决方案2】:

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

    【讨论】:

    • 狭义相对论效应获胜。
    • 谁说拥有物理学学位对我的 IT 专业知识毫无帮助? ;-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 2010-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-19
    相关资源
    最近更新 更多