最近摸鱼刷到条短视频讲“时间”是不存在的,只是我们为了方便记录而发明出来统一的标准。 想想是这么个意思。
那么有没有大佬测算过,时间服务器之间的差值大概是多少范围?各大云服务器之间的时间差值又是多少?会超过 5 秒吗?
1
aptupdate 2022-07-17 20:54:08 +08:00 via iPhone
有个协议叫 ntp
|
2
Exdui 2022-07-17 21:01:28 +08:00
误差是毫秒级别的。
|
3
charlie21 2022-07-17 21:16:01 +08:00
|
4
kwanzaa 2022-07-17 21:17:40 +08:00
能到五秒那得是拉格朗日点了
|
6
elfive 2022-07-17 21:27:27 +08:00 via iPhone
|
7
adrianzhang 2022-07-17 21:35:32 +08:00
时间是个关键要素,各大云服务商在实践中,都会安装硬件时钟源(而且有热备硬件),自家的服务器都会与该硬件同步时钟,有的用的是楼上说的铷时钟源。这样各大厂商服务器之间的时间误差理论上应该在 ns 级别(均各自与自家的硬时钟源同步,而硬件时钟源误差是非常低的。)
|
8
7DLNU56W 2022-07-17 21:35:41 +08:00
1 秒被定义为:铯 133 原子基态的两个超精细能级间跃迁辐射振荡 9192631770 周所持续的时间。有中国科学院国家授时中心专门测量时间,然后通过各种途径发布供大家使用,所以每个人的时间应该几乎没有太大误差,基本都在百万分之一秒到千分之一秒左右。
|
9
dimlau 2022-07-17 21:38:24 +08:00
想起前阵子看过卡洛·罗维利的《时间的秩序》很有意思,时间不但不一定普遍存在,而且在我们身边,时间其实(竟然)并不是连贯的,它被分割到某个粒度之后,时间粒之间是存在「缝隙」的。
|
10
mengzhuo 2022-07-17 22:11:30 +08:00
在某鹅做过 ntp 相关事情
云厂商都是从 GPS 、北斗这种来获取时间(建机房时就考虑了)精度一般在 us 级,然后通过 ntp 给其他机器。 各个云厂商之间的差值应该也不会超过 ms 级。 当然各个国家授时中心也会发射无线电信号来给“电波表”之类的授时。 我国的授时中心在西安,猜猜为啥? 大家日常接触到授时精度最高的服务其实是 5G 信号,ns 级的。 |
11
AlphaTauriHonda 2022-07-17 22:19:07 +08:00
@mengzhuo 为什么放在西安?
|
12
Danswerme 2022-07-17 22:23:42 +08:00
@AlphaTauriHonda 可能是因为西安位于中国地理位置中心。
|
13
NXzCH8fP20468ML5 2022-07-17 22:29:55 +08:00
openwrt 的 ntp 就是轮流从这腾讯云和阿里云 ntp 取值,差 2s 左右
|
14
raw0xff OP @adrianzhang 明白了。那么一些小机房也会有这种本地硬件时钟源吗?或者说没必要?
@7DLNU56W @dimlau 冷知识 get @AlphaTauriHonda 我查了下,因为西安地理位置刚好是我国国土中心。 |
15
rev1si0n 2022-07-17 22:36:06 +08:00
装个 ntpd
|
16
blankmiss 2022-07-17 22:42:36 +08:00
ntp 时间校准吧
|
17
realpg 2022-07-17 22:42:38 +08:00 1
|
18
raw0xff OP @xxfye 2s 吓到我了。我刷的官方 openwrt , /etc/config/system 里没有腾讯阿里 ntp ,是 openwrt.pool.ntp.org
|
19
jmk92 2022-07-17 23:02:57 +08:00
之前用 NTP 协议去写代码同步本机的时间,腾讯、阿里等几个 NTP 服务误差都在毫秒级,不会超过 1s 的,不过有代码中要考虑到网络耗时,发生丢包了要舍弃这次的请求,多次请求,得到的结果就是毫秒级的
|
20
nothingistrue 2022-07-18 09:33:24 +08:00
多看书,少看短视频。第一,时间单位和基准时间都是有国际公约的。第二,误差绝对存在,但误差会被控制在可控范围内,现在的时间基于原子钟,误差是小于纳秒级别的。
|
22
realpg 2022-07-18 14:43:39 +08:00
|
23
7DLNU56W 2022-07-18 16:26:13 +08:00
国家授时中心的 NTP 服务器地址是 ntp.ntsc.ac.cn 可以尝试与这个地址同步时间;另外还会通过无线电来发布时间,在 5MHz 、10MHz 和 15MHz 三个短波频点上都有进行授时,据说误差小于千分之一秒,听说在长波频点 100kHz 也有授时,据说误差小于百万分之一秒;还可以直接拨打电话 029 83895117 会直接给你播报时间。另外还有北斗卫星也会下发时间(应该是上面自带原子钟吧,具体我不太懂),据说阿里云授时服务的时间源就是接收北斗卫星下发的时间。
|
25
adrianzhang 2022-07-19 09:55:19 +08:00
@raw0xff 小机房一般不会用,因为这一套硬件时钟源挺贵的(好点的过十万)。
|