现行的公历中,平年有365天,闰年有366天,这是小朋友们都知道的生活小常识。但在闰年之外,还有偶尔出现的“闰秒”,每当“闰秒”出现时,全球的“协调世界时”都会同时增加一秒。然而不久前,Facebook母公司Meta的工程师们联名发表了一篇博客,呼吁取消闰秒,声称在互联网时代“引入闰秒是一种危险的做法”,这种做法“应该被取代”。
包括微软、谷歌和亚马逊在内的科技巨头纷纷表示赞同,美国和法国的计时机构也认同了这一请愿。这套已经沿用了五十年、写进了各国中小学课本的闰秒制度,为什么突然就成了各大科技公司的眼中钉呢?
科学上有两种时间计量系统:基于地球自转的天文测量而得出的“世界时”,和以原子振荡周期确定的“原子时”。由于两种时间尺度对秒的测量方法不同,随着时间推移,两个计时系统的结果会出现差异,因此有了“协调世界时”的概念。
1972年,国际计量大会决定,当“世界时”与“原子时”之间的时刻相差超过0.9秒时,就在“协调世界时”上加上或减去1秒,以尽量接近“世界时”,这就是闰秒。自1972年至今,闰秒已经增加了27次。这小小的一秒对于我们的生活来说也许并没有什么影响,但对于计算机来说,这一秒足以令系统大规模崩溃。
闰秒这么麻烦的东西,到底为什么存在呢?
远古时期,人们就开始用太阳的东升西落来计算时间,古代学者将平均太阳日平分为24小时,再以60进制为基础,创造了分和现代的秒作为时间单位,这种以地球自转对太阳的周期为基准测量得出的时间就是太阳时。但地球自转的周期并不是恒定的,而是在不断变慢,每天的日子也越变越长。13亿年前,地球每年有500多天,每年有13-14个月。
因为太阳和月亮的潮汐力作用引起了摩擦,产生的热量被耗散掉,消耗了地球自转的动能,使得其转动变慢。
随着时代发展,传统的世界时计量法很难再满足人们的需要,特别在太空探测、通信导航、天文观测、工业自动化等对时间精确度要求极高的领域更是如此。所以人们发明了计时更准确的原子钟。原子内部震荡不受外界环境影响,因此非常稳定和精确,以这种固定秒长计量的时间,其精确度每天快慢不超过千万分之一秒。
但随着时间推移,国际原子时和世界时这两个系统会出现差异,时间越长,这种差异就会越大。于是,国际计量大会在1972年决定,当“世界时”与“原子时”之间时刻相差超过0.9秒时,就在“协调世界时”上加上或减去1秒,以尽量接近“世界时”,这就是闰秒。
哪怕运行140亿年,原子钟的时间精度差也能保持在十分之一秒之内,为了让原子钟和世界时尽量保持一致,人们只能不断地插入闰秒,让程序员们加班加点地处理bug。
但除了现行方法,也不是没有其他处理闰秒问题。最简单粗暴的方法就是在插入闰秒前停止NTP时钟同步服务,待闰秒结束后再开启,断同步保平安。但这个方法成本太高,并且可能会带来其他影响。目前,国际大公司通用的解决方案就是“闰抹”,提前将一闰秒分成许多份,再平均分配到一大段时间中慢慢增加。谷歌和亚马逊会将一闰秒平均插入到24小时中,届时刚好和“协调世界时”同步。
时间是文明的坐标,是跨文化地区合作的基准,因为有了时间的概念,我们才能够穿越空间相约在一起。时间不完全准确就没有意义,可以说计时能力是文明发展程度的度量衡之一。如今,我们的文明已经走到了能用原子钟来计时这一步,如果继续向下深入,说不定还会有更准确的方法来掌控时间。但目前看来,我们还是只能通过人工干预的“笨办法”让原子时和世界时的差距保持在合理范围内,也许在未来,会出现比闰秒和闰抹更好的解决方案。