近日,在法国巴黎闭幕的 第27届国际计量大会 上,科学家和政府代表投票决定到 2035年取消闰秒 。
喜大普奔,毕竟各大互联网企业和程序员们苦闰秒久矣。
今年7月,谷歌、Meta、微软、亚马逊就曾 联手倡议废除闰秒。
难怪外界都调侃: 没什么事能让Meta、谷歌、微软等巨头同暴躁的Linux之父Linus Torvalds达成一致了,除了闰秒。
而今天,这一秒,程序员们终于不用再续了!

那什么是 闰秒 呢?
在概念上它与闰年类似,都是一种不定期地出现在我们的计时系统中的时间度量单位。
可以理解为 基于地球自转的世界时(UT) 和 基于原子振荡周期的国际原子时(TAI) 这两套时间标准之间的误差。
1927年,基于地球自转的 世界时 首先被确立,但是随着科技的发展,人们发现地球的自转速度还会受到潮汐、地壳运动等因素的影响。
并不是每天都是标准的24小时, 总会存在几毫秒的误差, 随着时间的推移,这个误差会越来越大。

于是乎,1967年 国际原子时 诞生了,它采用了基于铯原子的能级跃迁原子秒作为时标,重新定义了“秒”的时长。
但由于世界时会随着地球的自转越来越慢,而原子时却非常稳定, 随着时间的推移,二者之间的差异会越来越大, 因此也就有了 协调世界时( UTC) 的出现。
协调世界时以国际原子时秒长为基础,并规定,当世界时与原子时之间时刻累计相差超过 0.9 秒 时,“协调世界时”就 加上或减去 1 秒 ,以尽量接近世界时,这 1 秒,就是闰秒 。
自诞生50年来,全球已经实施了 27次 闰秒调整。
这短短的1秒对我们是没什么影响,但对 服务器 来说却是“天差地别”。
因为多了一个闰秒,很多任务会因为时间条件不匹配而启动失败,程序就会一直尝试不停循环,直到服务器过载。
关键是闰秒还不像闰年一样有规律, 程序员无法预测,更没法提前写在系统里。
2012年美国著名新闻社交网站 Reddit突然瘫痪了40分钟, 与此同时就连领英、Mozilla等网站也突然崩溃,这未免太过于巧合。
罪魁祸首就是闰秒,因为那天晚上出现了一个奇怪的时间: 23:59:60 ,就因为多了这一秒,让计算机程序异常并崩溃。
目前许多科技公司采用 “闰秒弥补” 的解决方案,即将多出的一秒分成很多个小段,悄悄插入时间中,将多出的1秒抹平。
当然也有人选择直接暂停或者跳一秒......
而不管用什么方法解决,都会付出巨大的代价,每次调整,各大公司都会出动大批技术运维来维护。
还时常有意外发生......
Linux之父 也表示出对闰秒的无奈: 它真的很烦人,且难以在常规环境下测试,就要交付给用户。
而如今,闰秒终于要被取消了,程序员们的曙光终于来了!