什么是闰秒?(以及为何将在2035年前废除)

发布时间: 9:00 AM , 作者 时间.biz 编辑部

了解闰秒的定义、存在原因、引发的故障、谷歌的闰秒平滑技术,以及2022年国际计量大会为何投票决定在2035年前废除它。

一个显示23:59:60的数字时钟,这是闰秒插入期间UTC中罕见的额外一秒

什么是闰秒?

闰秒是一种偶尔添加到协调世界时(UTC)中的一秒调整,你的手机、服务器和卫星都同步到这一全球时间标准。当插入一个闰秒时,一天的最后一分钟包含61秒而不是60秒——时钟会经过23:59:60,然后跳到00:00:00。

闰秒听起来微不足道,但并非如此。那额外的一秒曾导致主要网站崩溃、航班停飞,并在物理学家、天文学家和软件工程师之间引发了长达数十年的争论。2022年,全球计时权威机构最终投票决定取消闰秒。以下是闰秒到底是什么、为什么存在以及为什么即将被淘汰。

为什么存在闰秒

问题归结为两种不完全一致的测量时间的方法。

原子时间完美稳定。 自1967年以来,秒的定义基于铯-133原子的振动——每秒9,192,631,770次振动。全球原子钟网络维持着国际原子时(TAI),它极其规律:既不会加快也不会减慢。

地球自转并不稳定。 以地球实际自转测量的一天长度略有变化。潮汐摩擦、地球熔融核心的运动以及冰盖融化等质量转移都会影响自转速率。长期来看,地球总体上在减速,因此天文日比86,400个原子秒略长。这种基于自转的时间称为UT1。

如果不加干预,基于稳定原子秒的UTC和与实际太阳位置相关的UT1会逐渐偏离。为了保持它们一致,规则很简单:UTC与UT1的差异绝不能超过0.9秒。 每当差距接近这个极限时,就会在UTC中插入一个闰秒,让原子时间“等待”自转较慢的地球赶上。

因此,闰秒本质上是一种手动修正,使我们精确的原子钟与我们实际居住的这颗摇摆不定的行星保持同步。

闰秒简史

闰秒于1972年引入,当时UTC被重新定义为基于原子时间,同时与地球自转保持联系。自那时起,截至2016年已添加了27个闰秒。迄今为止,每一个都是正闰秒——增加一秒,从未移除——因为在此期间地球自转总体上落后于原子时间。最近一次闰秒插入于2016年12月31日23:59:60 UTC。

此后出现了近七年的显著间隔,因为近年来地球自转实际上略有加快——足以让科学家们首次开始认真讨论负闰秒(移除一秒而非增加一秒)的可能性,这种情况从未发生过,而且许多工程师对此比普通闰秒更加恐惧。

谁决定何时发生闰秒?

闰秒并非按固定日历安排。它们由总部设在巴黎附近的国际地球自转和参考系统服务(IERS)宣布,该机构持续监测地球自转。当UT1-UTC差距接近0.9秒时,IERS会发布公告——通常提前六个月——宣布将插入一个闰秒。按照惯例,插入发生在6月30日或12月31日(UTC)的末尾。

这六个月的提前期是工程问题的关键:时间表不规则且不可预测。你无法像计算闰年那样写出一个公式来告诉你下一个闰秒何时发生。你必须等待IERS宣布,然后确保系统中的每个时钟都知道。

为什么工程师讨厌闰秒

对大多数人来说,额外的一秒是察觉不到的。对于期望每分钟恰好有60秒的计算机来说,61秒的一分钟就是一颗地雷。最著名的事件发生在2012年6月30日,当时插入了一个正闰秒。就在那一刻,一系列系统崩溃了。Reddit以及其他大型网站宕机。该漏洞追溯到Linux内核如何处理时钟在该瞬间的倒退——它触发了一个失控条件,导致服务器CPU占用率飙升。基于受影响软件的航空预订系统也报告了中断,导致值机延迟。类似的麻烦在更早的闰秒中也出现过。

根本问题是结构性的:

  • 事件罕见,因此处理闰秒的代码路径几乎从未被使用,也很少在实际条件下测试。
  • 时间似乎停滞或重复,许多软件默默假设时间只会单调向前移动。
  • 时间表不可预测,因此系统必须获取并信任外部公告,而不是自行计算调整。

由于现代故障可能级联影响金融市场、电信网络和云平台,一个处理不当的秒可能代价高昂。

谷歌的“闰秒涂抹”解决方案

谷歌没有采用突然跳跃的方式应用闰秒,而是首创了一种称为闰秒涂抹的方法。谷歌的服务器不是在午夜插入一整秒,而是将修正分散到一个较长的时间窗口——通常是事件前后约24小时——通过使每一秒略微变长(或变短)来实现。在涂抹期间,没有时钟会显示23:59:60,也没有时钟会倒退;时间只是在一整天内运行得略微“慢”一些,直到额外的一秒被悄悄吸收。软件看到的是一个平滑、单调的时钟,永远不会遇到危险的边界情况。亚马逊、Meta等公司也采用了类似的涂抹策略,这已成为大规模系统的事实生存技术。

问题在于:涂抹后的时钟会故意与官方UTC在数小时内不一致——这对大多数服务来说没问题,但当需要与未涂抹的系统协调时就很麻烦。这是对行业日益认为根本不应该存在的问题的一种变通方法。

如果你使用纪元时间,请注意Unix时间戳根本不计算闰秒——Unix时间只是假装每天恰好有86,400秒,这也是现实世界调整造成如此多摩擦的部分原因。

2035年决定:废除闰秒

这场辩论在2022年国际计量大会(CGPM)上达到高潮——该机构负责管理公制系统和秒的定义。代表们通过了一项里程碑式的决议:到2035年将停止添加闰秒的做法。 从那时起,UTC将被允许偏离UT1超过当前0.9秒的限制,容差将在以后重新协商——很可能允许差距在数十年内增长,甚至可能达到一分钟或更多,然后才会考虑任何修正。

实际上,这意味着UTC成为一个平滑、连续的时间尺度,不再有令人意外的61秒分钟。真正需要地球自转时间的天文学家仍然可以直接使用UT1;所有运行计算机的人都得到了一个他们终于可以信任的时钟。这一改变用与太阳之间微小、缓慢累积的差异,换取了消除一个反复出现的全球技术风险源。

常见问题

是否有过移除而非添加闰秒的情况?

没有。自1972年以来插入的所有27个闰秒都是正闰秒——增加一秒。负闰秒(从23:59:58跳到00:00:00)从未发生过,尽管地球近期自转加快曾短暂使其成为现实可能,但2035年的决定使整个问题变得没有实际意义。

闰秒会影响时区吗?

不直接影响。时区是相对于UTC的固定偏移,通过像IANA时区数据库这样的数据库管理。闰秒调整的是UTC本身,因此每个时区在同一瞬间同时偏移——时区之间的偏移从未改变。

我的电脑时钟在2035年会改变吗?

用户不会看到明显变化。2035年后,时钟只是不再接收偶尔的闰秒。UTC将在多年内缓慢偏离天文时间,但这种偏离非常微小,在日常生活中无法察觉。

UTC、TAI和UT1之间有什么区别?

TAI是纯粹的原子时间,完美稳定。UT1是基于地球实际自转的时间。UTC是日常标准:它像TAI一样以原子秒运行,但通过闰秒与UT1保持对齐。截至2016年,UTC正好比TAI慢37秒。

为什么不干脆让时钟和太阳偏离?

这基本上就是2035年决定所做的。这种差异增长得非常缓慢——大约每个世纪一分钟——需要几代人才能产生影响,到那时可以有意计划一次性修正,而不是每隔几年打补丁。


好奇机器在这一切之下是如何实际计时的吗?闰秒在纪元时间中完全消失——试试我们的Unix时间戳转换器,看看计算机如何精确追踪流逝的秒数。

现在时间 在 这些城市:

阿姆斯特丹 · 巴塞罗那 · 北京 · 柏林 · 哥本哈根 · 迪拜 · 伦敦 · 洛杉矶 · 马德里 · 墨西哥城 · 莫斯科 · 孟买 · 纽约市 · 巴黎 · 罗马 · 上海 · 悉尼 · 东京

现在各国的时间:

🇦🇺 澳大利亚 | 🇧🇷 巴西 | 🇨🇦 加拿大 | 🇨🇳 中国 | 🇫🇷 法国 | 🇩🇪 德国 | 🇮🇳 印度 | 🇮🇩 印度尼西亚 | 🇮🇹 意大利 | 🇯🇵 日本 | 🇲🇽 墨西哥 | 🇳🇱 荷兰 | 🇷🇺 俄罗斯 | 🇸🇦 沙特阿拉伯 | 🇰🇷 韩国 | 🇪🇸 西班牙 | 🇸🇪 瑞典 | 🇨🇭 瑞士 | 🇬🇧 英国 |

现在时间在 时区:

CET | PST | CST | EST | EET | IST | JST | MSK

免费 小工具 面向网站管理员:

免费模拟时钟小部件 | 免费数字时钟小工具 | 免费文本时钟小工具 | 免费文字时钟小工具