17611538698
webmaster@21cto.com

大厂们终于无法忍受“加一秒”了,微软谷歌Meta等公司提议废除闰秒

资讯 0 1000 2022-11-29 11:54:55

图片

闰秒。(图/ NIST)


决定了!这一秒,程序员们不用再续了!国际计量大会已正式宣布:废除闰秒。

图片

该消息一经官宣,相当一部分人喜大普奔。

图片

毕竟,各家互联网大厂和其背后的程序员们,苦闰秒久矣:就在今年7月,谷歌Meta微软亚马逊就曾联手倡议废除闰秒。

外界就有调侃说:

没什么事能让Meta、谷歌、微软等巨头同暴躁的Linux之父Linus Torvalds达成一致了,除了闰秒以外。

图片

难以招架的「闰秒」


闰秒之所以存在,源于人类使用的标准时间计量工具原子钟的一天为86400秒,该数字与实际地球自转一天时间并不完全一致,随时间累积,误差就会慢慢增大。


为保证我们使用的时间与真实地球自转保持同步,1972年开始,人们引入闰秒即:在一年中6月30日或12月31日,以增减一秒方式,进行误差校准。如要加一秒,就在当日23点59分59秒,加一个23点59分60秒。若要减一秒,则在当日23点59分58秒,直接跳到00点00分00秒。


时至今日,这种矫正已进行了27次,均为增秒操作,最近一次,发生在2016年至17年跨年夜。

图片

闰秒调整确实让人类生活节奏与地球保持了同步校准,但给科技行业带来麻烦不小。

一份2016年12月的公告中,阿里云就明确提醒,相关调整可能对客户应用或业务造成一定影响,希望客户阅读相关调整方案,做好风险评估:

图片

目前,科技公司凑合着弄的主流解决方案是——将多出的一秒分成很多个小段,在不影响运行情况下,悄悄插入时间中,将多出来的一秒「抹平」。

谷歌Meta等大厂均在使用此类方法。

图片

当然,也有人选择直接暂停NTP(网络时间协议)服务一秒钟,以此额外增加一秒。

无论用什么方法解决,终归来说,计时程序在系统中牵一发动全身。

每次调整,各家公司都出动大批技术运维来调整时间(如暂时关闭NTP等)、修改程序,避免当中出现bug影响业务。

这当中,出现事故也着实不意外。

2012年Reddit一次系统崩溃就因闰秒而起,时长超半小时。一组运行开源Linux操作系统的机器未能正确处理增添的闰秒,导致一连串服务器停止运行。

Linux之父,Linus Torvalds曾对媒体提起该话题,也表示出对闰秒的无奈:它真的很烦人,且难以在常规环境下测试,就要交付给用户。

图片

闰秒也造成过Cloudflare的服务器崩溃。

在2017年新年,多余的1秒钟让公司的DNS代理软件崩溃并切换到负值,引发了「软件恐慌」。

尽管当时程序员们已提前写好应对程序,但实际运行时,还是出了问题。

图片

不止一两家,浏览器Mozilla、领英、点评网站Yelp、澳洲航空均因闰秒出现过问题。

由于闰秒实在令程序员们脑壳痛,今年7月谷歌、微软、Meta、亚马逊联合倡议废除它。

还找来美国国家标准与技术研究院(NIST)和国际计量局(BIPM),帮他们背书,一同证明「废除」的合理性。

图片

取消,但没立即取消


根据目前披露信息,该项决议计划2035年生效,且维持到2135年。其间,计量学家们也将试图找到更好解决方案。


参会的决策者们补充道,即便百年间以原子钟计量的UTC时间与地球自转的差距超过1分钟,大众体感上也没什么差别。


但不是所有国家都赞成这回的决定,比如俄罗斯。


他们的卫星定位系统GLONASS也需要进行相应调整和重新设计,因此,他们希望闰秒取消时间推迟到2040年。

图片

且该决议还需与国际电信联盟(ITU)达成一致,商议时间预计在2023年底。

最后得提一嘴的是,取消闰秒对码农虽利好,但落地时间为2035年。

也就是说,当取消闰秒时,连00年的码农都到35了。

目前大厂程序员们仍需继续跟闰秒battle下去了。

图片

参考链接:
[1]https://www.nature.com/articles/d41586-022-03783-5
[2]https://arstechnica.com/science/2022/11/network-crashing-leap-seconds-to-be-abandoned-by-2035-for-at-least-a-century/
[3]
https://mp.weixin.qq.com/s/T1LlPXKniH4AAv6dn6-AXQ

来源:量子位(ID:QbitAI)

评论