文 | 萧箫 发自 凹非寺
源 | 量子位 , 公众号 QbitAI
大厂们再也无法忍受闰秒带来的一堆bug了。
现在,谷歌Meta微软亚马逊等一众科技巨头发起了一项倡议:废除闰秒!
闰秒这玩意,说白了就是通过给“世界标准时间”加_(或减)_1秒,让它更接近“太阳时”。
“世界标准时间”(UTC)与原子钟测量的精确时间同步,“太阳时”根据地球自转测量得出,但地球自转并不稳定。
例如,两者相差超过0.9秒时,就在23点59分59秒与00点00分00秒之间,插入一个原本不存在的“23点59分60秒”,来将时间调慢一秒钟。
然鹅,就是这个看似有点用的闰秒,把一众程序员愁坏了。
凭空少一秒、或冒出一个“第60秒”,就得出动一众人调整时间_(如暂时关闭NTP等)_、修改程序,尽可能降低闰秒带来的影响。对此Meta表示:
闰秒造成的破坏,比它带来的用处大多了。
这群大厂还找来了两家权威机构,即美国国家标准与技术研究院_(NIST)_和国际计量局_(BIPM)_,与他们达成了一致意见。
虽然闰秒似乎离我们略远,不过这些年来,它确实给计算机行业惹了不少麻烦。
“1秒钟”让计算机宕机
闰秒于1972年被引入,迄今为止已经增加了27个闰秒。
每一次增加闰秒,都会引起不少公司的计算机或是应用程序出现问题。
例如,在互联网发展得如火如荼的2012年,闰秒就带来了一波“潮水般”的影响。
闰秒在当年6月30号出现后,国外社区Reddit、浏览器Mozilla、领英和点评网站Yelp的服务器全部出现了问题,此外依赖计时器的机票预订服务Amadeus也发生了故障。
但闰秒造成的影响,并没有在这之后消失,毕竟总有新的bug出现_(手动狗头)_。
2017年,Cloudflare也遇上了闰秒故障,导致一众客户用不了相关服务。尽管程序员们已经提前写好应对程序,然而在实际运行时,还是出了问题。
所以,究竟应该如何消除闰秒带来的影响?
当前最常用的方法是“平摊法”。
以谷歌为例,程序员们会将多出来的一秒钟分割成很多个小时间段_(如几分之一秒)_,然后,在不影响程序运行的情况下悄悄加入到时间中。
这样,当闰秒来临时,程序实际上已经平安无事地度过了这一秒钟。
对于Meta程序员来说,采取的也是相似的做法,把这个闰秒在时间表上悄无声息地“抹掉”。
但无论如何,只要下一个闰秒还会出现,大厂们就还得继续面临闰秒带来的影响,花费额外的精力去“消除”它。
包括谷歌、亚马逊、Meta和微软等大厂在内,都感觉闰秒的出现是弊大于利,Meta还专门写了篇文章,呼吁废除闰秒。
当然,想废除闰秒的也不止这几个大厂。
早在2015年的时候,国际电信联盟就在WRC上讨论过是否要保留闰秒的事情。
只是报告结果还没出来,预计会等到2023年。
对于废除闰秒这事儿,有网友调侃:
脸书的开发们实在太害怕闰秒了,他们觉得推动计时法改变是比修代码更简单的事情。
但此前也有网友提到,其实不止IT行业,工业上也会受到闰秒的影响。
你受到过闰秒带来的影响吗?
后台回复关键词【入群】
加入卖萌屋NLP、CV、搜推广与求职讨论群
[1] https://www.cnet.com/tech/computing/tech-giants-try-banishing-the-leap-second-to-stop-internet-crashes/
[2] https://engineering.fb.com/2022/07/25/production-engineering/its-time-to-leave-the-leap-second-in-the-past/
[3] https://www.itu.int/net/pressoffice/press_releases/2015/53.aspx