廢除閏秒 程序員的福音
最近聽到一則大家都說好的新聞:
國際計量大會已正式宣布:廢除閏秒。
雖然我現(xiàn)在沒意識到有什么用處,但是這些大佬說有用,還是得聽聽。
也來聽聽大家的想法:

該消息一經(jīng)官宣,相當(dāng)一部分人喜大普奔。

新聞:
近日,谷歌、微軟、Meta 和亞馬遜呼吁廢除閏秒,已得到美國國家標(biāo)準與技術(shù)研究院和國際計量局贊同。國際電信聯(lián)盟決定,將于2023年世界無線電通信大會上再次對閏秒存廢議題進行研究表決。
為何要廢除閏秒?廢除閏秒是否可行?就這些問題,《中國科學(xué)報》獨家專訪了中國科學(xué)院國家授時中心研究員董紹武、中國科學(xué)院計算技術(shù)研究所研究員李煉。
畢竟,各家互聯(lián)網(wǎng)大廠和其背后的程序員們,苦閏秒久矣:就在今年7月,谷歌Meta微軟亞馬遜就曾聯(lián)手倡議廢除閏秒。
外界就有調(diào)侃說:
沒什么事能讓Meta、谷歌、微軟等巨頭同暴躁的Linux之父Linus Torvalds達成一致了,除了閏秒。
什么是閏秒
閏秒之所以存在,源于人類使用的標(biāo)準時間計量工具原子鐘的一天為86400秒,該數(shù)字與實際地球自轉(zhuǎn)一天時間并不完全一致,隨時間累積,誤差就會慢慢增大。
為保證我們使用的時間與真實地球自轉(zhuǎn)保持同步,1972年開始,人們引入閏秒。
即:
在一年中6月30日或12月31日,以增減一秒方式,進行誤差校準。如要加一秒,就在當(dāng)日23點59分59秒,加一個23點59分60秒。若要減一秒,則在當(dāng)日23點59分58秒,直接跳到00點00分00秒。
時至今日,這種矯正已進行了27次,均為增秒操作,最近一次,發(fā)生在2016年至17年跨年夜。

閏秒調(diào)整確實讓人類生活節(jié)奏與地球保持了同步校準,但給科技行業(yè)帶來麻煩不小。
一份2016年12月的公告中,阿里云就明確提醒,相關(guān)調(diào)整可能對客戶應(yīng)用或業(yè)務(wù)造成一定影響,希望客戶閱讀相關(guān)調(diào)整方案,做好風(fēng)險評估:

目前,科技公司湊合著弄的主流解決方案是——將多出的一秒分成很多個小段,在不影響運行情況下,悄悄插入時間中,將多出來的一秒「抹平」。
谷歌Meta等大廠均在使用此類方法。

當(dāng)然,也有人選擇直接暫停NTP(網(wǎng)絡(luò)時間協(xié)議)服務(wù)一秒鐘,以此額外增加一秒。
無論用什么方法解決,終歸來說,計時程序在系統(tǒng)中牽一發(fā)動全身。
每次調(diào)整,各家公司都出動大批技術(shù)運維來調(diào)整時間(如暫時關(guān)閉NTP等)、修改程序,避免當(dāng)中出現(xiàn)bug影響業(yè)務(wù)。
這當(dāng)中,出現(xiàn)事故也著實不意外。
2012年Reddit一次系統(tǒng)崩潰就因閏秒而起,時長超半小時。一組運行開源Linux操作系統(tǒng)的機器未能正確處理增添的閏秒,導(dǎo)致一連串服務(wù)器停止運行。
Linux之父,Linus Torvalds曾對媒體提起該話題,也表示出對閏秒的無奈:它真的很煩人,且難以在常規(guī)環(huán)境下測試,就要交付給用戶。

閏秒也造成過Cloudflare的服務(wù)器崩潰。
在2017年新年,多余的1秒鐘讓公司的DNS代理軟件崩潰并切換到負值,引發(fā)了「軟件恐慌」。
盡管當(dāng)時程序員們已提前寫好應(yīng)對程序,但實際運行時,還是出了問題。
不止一兩家,瀏覽器Mozilla、領(lǐng)英、點評網(wǎng)站Yelp、澳洲航空均因閏秒出現(xiàn)過問題。
由于閏秒實在令程序員們腦殼痛,今年7月谷歌、微軟、Meta、亞馬遜聯(lián)合呼吁廢除它。
還找來美國國家標(biāo)準與技術(shù)研究院(NIST)和國際計量局(BIPM),幫他們背書,一同證明「廢除」的合理性。
取消,但沒立即取消
根據(jù)目前披露信息,該項決議計劃2035年生效,且維持到2135年。其間,計量學(xué)家們也將試圖找到更好的的解決方案。
參會的決策者們補充道,即便百年間以原子鐘計量的UTC時間與地球自轉(zhuǎn)的差距超過1分鐘,大眾體感上也沒什么差別。
但不是所有國家都贊成這回的決定,比如俄羅斯。
他們的衛(wèi)星定位系統(tǒng)GLONASS也需要進行相應(yīng)調(diào)整和重新設(shè)計,因此,他們希望閏秒取消時間推遲到2040年。

且該決議還需與國際電信聯(lián)盟(ITU)達成一致,商議時間預(yù)計在2023年底。
最后得提一嘴的是,取消閏秒對碼農(nóng)雖利好,但落地時間為2035年。
也就是說,當(dāng)取消閏秒時,連 00 年的碼農(nóng)都到 35 了。
廢除閏秒能行嗎
面對“大廠”苦閏秒久矣的現(xiàn)狀,全球關(guān)于“廢除閏秒”的呼聲也越來越高。受訪專家認為,雖然閏秒有“副作用”,但取消閏秒的“副作用”或許更大。
有科學(xué)家做過測算,如果取消閏秒,那么大約50年后,我們使用的時間將與世界時相差約1分鐘,300年后相差10分鐘,900年后相差可達1小時。如果作息時間不變,將來總有一天,人們會“披星戴月”去上班、上學(xué)。
“閏秒是目前唯一把世界時、原子時聯(lián)系起來的有效手段,如果沒有閏秒,就意味著時間與地球自轉(zhuǎn)、太陽位置不關(guān)聯(lián),甚至意味著將不能通過現(xiàn)有的國際標(biāo)準時間體系獲得世界時的信息?!倍B武表示,時間隸屬天文學(xué),時間頻率屬于天文學(xué)中的天體測量與天體力學(xué),且時間從古到今是由天文臺確定的,無法想象時間和天文學(xué)割裂。
董紹武介紹,光1秒可以走30萬公里,因此看似很短的1秒,從地球自轉(zhuǎn)角度看卻是一件很重要的事情。與測繪相關(guān)的領(lǐng)域,以及人造衛(wèi)星、宇宙飛船的發(fā)射、導(dǎo)航、著落、回收等,都與時間緊密關(guān)聯(lián)。
“時間的定義徹底與地球自轉(zhuǎn)脫鉤未必合適。時間不僅具有物理和技術(shù)屬性,還有社會和文化屬性,同時時間是非常重要的戰(zhàn)略資源,也要考慮維護國家權(quán)益。”董紹武說。
此外,也有人提出,閏1秒太麻煩,可以閏1分鐘、半小時、1小時。對此,董紹武表示,一些自動化通信設(shè)備通常以秒為基本單位,直接閏1小時帶來的麻煩可能會更多。
對于如何處理世界時與原子時之間的差異,他認為,需要進行充分的科學(xué)論證,“而科學(xué)論證是個很嚴謹?shù)倪^程,不是一蹴而就的”。

小劉Java之路
非科班轉(zhuǎn)行成功,也迷茫過,也痛苦過,走過不少彎路。用親身經(jīng)歷分享每個階段所做的準備和制定的目標(biāo),分享自己的所思所想、相關(guān)筆記和學(xué)習(xí)資料、工作和生活心得。選擇比努力更重要?。。≌谂^斗的你......加油吧! 打工人!青年們!
公眾號
最后,歡迎學(xué)編程的朋友們加入我的 《java學(xué)習(xí)群》,我會 1 對 1 解決你的問題(盡我所能),群里的人也會對解答疑惑。

掃碼拉群,學(xué)習(xí)打卡,交流經(jīng)驗