V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Sponsored by
LinkedIn
不坐班的神仙工作 · 去任何你想去的地方远程,赚一线城市的工资
2000 个不用出门 Social 的全球远程工作,帮助 V2EX 的小伙伴开启全新的工作方式。
Promoted by LinkedIn
raw0xff
V2EX  ›  程序员

关于各大云服务器之间的时间差

  •  
  •   raw0xff · 74 天前 · 2428 次点击
    这是一个创建于 74 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近摸鱼刷到条短视频讲“时间”是不存在的,只是我们为了方便记录而发明出来统一的标准。 想想是这么个意思。

    那么有没有大佬测算过,时间服务器之间的差值大概是多少范围?各大云服务器之间的时间差值又是多少?会超过 5 秒吗?

    25 条回复    2022-07-19 09:55:19 +08:00
    aptupdate
        1
    aptupdate  
       74 天前 via iPhone
    有个协议叫 ntp
    Exdui
        2
    Exdui  
       74 天前
    误差是毫秒级别的。
    charlie21
        3
    charlie21  
       74 天前
    矫正系统时间(对表)
    sudo apt install ntpdate
    sudo ntpdate pool.ntp.org
    kwanzaa
        4
    kwanzaa  
       74 天前
    能到五秒那得是拉格朗日点了
    elfive
        5
    elfive  
       74 天前 via iPhone
    @aptupdate 有个协议叫 ptp ,不过最多只跑在局域网里,时间误差可以到 10ns 以内
    elfive
        6
    elfive  
       74 天前 via iPhone
    @elfive 应该说是机器之间的时间差可以到 10ns 以内,ptp 协议不保证时间的精度。
    目前获取准确的时间,可以装一个铷时钟源。
    即使与 ntp 里面的根服务器进行同步,误差还是相对来说蛮大的。
    adrianzhang
        7
    adrianzhang  
       74 天前
    时间是个关键要素,各大云服务商在实践中,都会安装硬件时钟源(而且有热备硬件),自家的服务器都会与该硬件同步时钟,有的用的是楼上说的铷时钟源。这样各大厂商服务器之间的时间误差理论上应该在 ns 级别(均各自与自家的硬时钟源同步,而硬件时钟源误差是非常低的。)
    7DLNU56W
        8
    7DLNU56W  
       74 天前
    1 秒被定义为:铯 133 原子基态的两个超精细能级间跃迁辐射振荡 9192631770 周所持续的时间。有中国科学院国家授时中心专门测量时间,然后通过各种途径发布供大家使用,所以每个人的时间应该几乎没有太大误差,基本都在百万分之一秒到千分之一秒左右。
    dimlau
        9
    dimlau  
       74 天前
    想起前阵子看过卡洛·罗维利的《时间的秩序》很有意思,时间不但不一定普遍存在,而且在我们身边,时间其实(竟然)并不是连贯的,它被分割到某个粒度之后,时间粒之间是存在「缝隙」的。
    mengzhuo
        10
    mengzhuo  
       74 天前
    在某鹅做过 ntp 相关事情

    云厂商都是从 GPS 、北斗这种来获取时间(建机房时就考虑了)精度一般在 us 级,然后通过 ntp 给其他机器。
    各个云厂商之间的差值应该也不会超过 ms 级。

    当然各个国家授时中心也会发射无线电信号来给“电波表”之类的授时。
    我国的授时中心在西安,猜猜为啥?

    大家日常接触到授时精度最高的服务其实是 5G 信号,ns 级的。
    AlphaTauriHonda
        11
    AlphaTauriHonda  
       74 天前
    @mengzhuo 为什么放在西安?
    Danswerme
        12
    Danswerme  
       74 天前
    @AlphaTauriHonda 可能是因为西安位于中国地理位置中心。
    xxfye
        13
    xxfye  
       74 天前
    openwrt 的 ntp 就是轮流从这腾讯云和阿里云 ntp 取值,差 2s 左右
    raw0xff
        14
    raw0xff  
    OP
       74 天前
    @adrianzhang 明白了。那么一些小机房也会有这种本地硬件时钟源吗?或者说没必要?

    @7DLNU56W @dimlau 冷知识 get

    @AlphaTauriHonda 我查了下,因为西安地理位置刚好是我国国土中心。
    rev1si0n
        15
    rev1si0n  
       74 天前
    装个 ntpd
    blankmiss
        16
    blankmiss  
       74 天前
    ntp 时间校准吧
    realpg
        17
    realpg  
       74 天前   ❤️ 1
    @xxfye #13
    你路由器要是差 2s 那建议扔了
    ntp 除非你家网络拥堵到极致大量丢包,还是间歇性,根本不可能有 1s 差
    raw0xff
        18
    raw0xff  
    OP
       74 天前
    @xxfye 2s 吓到我了。我刷的官方 openwrt , /etc/config/system 里没有腾讯阿里 ntp ,是 openwrt.pool.ntp.org
    jmk92
        19
    jmk92  
       74 天前
    之前用 NTP 协议去写代码同步本机的时间,腾讯、阿里等几个 NTP 服务误差都在毫秒级,不会超过 1s 的,不过有代码中要考虑到网络耗时,发生丢包了要舍弃这次的请求,多次请求,得到的结果就是毫秒级的
    nothingistrue
        20
    nothingistrue  
       74 天前
    多看书,少看短视频。第一,时间单位和基准时间都是有国际公约的。第二,误差绝对存在,但误差会被控制在可控范围内,现在的时间基于原子钟,误差是小于纳秒级别的。
    julyclyde
        21
    julyclyde  
       74 天前
    @mengzhuo 原子钟在西安,但是电波不在西安
    你做过相关事情,看来工作不太扎实啊
    realpg
        22
    realpg  
       74 天前
    @jmk92 #19
    NTP 协议自带误差调整机制
    用国外的也不会 1s 只有不稳定时候 但是不稳定会丢掉结果,非常突发的一个特定包不稳定才可能有
    7DLNU56W
        23
    7DLNU56W  
       74 天前
    国家授时中心的 NTP 服务器地址是 ntp.ntsc.ac.cn 可以尝试与这个地址同步时间;另外还会通过无线电来发布时间,在 5MHz 、10MHz 和 15MHz 三个短波频点上都有进行授时,据说误差小于千分之一秒,听说在长波频点 100kHz 也有授时,据说误差小于百万分之一秒;还可以直接拨打电话 029 83895117 会直接给你播报时间。另外还有北斗卫星也会下发时间(应该是上面自带原子钟吧,具体我不太懂),据说阿里云授时服务的时间源就是接收北斗卫星下发的时间。
    mengzhuo
        24
    mengzhuo  
       73 天前
    @julyclyde 阅读理解要扣分了,我只说授时中心,没说授时台
    adrianzhang
        25
    adrianzhang  
       73 天前
    @raw0xff 小机房一般不会用,因为这一套硬件时钟源挺贵的(好点的过十万)。
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4002 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 44ms · UTC 08:31 · PVG 16:31 · LAX 01:31 · JFK 04:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.