こんにちは。
お世話になっております、エンジニアのふとしです。
みなさん、4年おきにうるう年があることはご存知かと思いますが、それとは別に「うるう秒」があるのはご存知でしょうか?
今回は、エンジニア以外にはあまり知られていない、「うるう秒」についてご紹介したいと思います。
うるう秒とは?
閏秒(うるうびょう、英: leap second)は、現行の協定世界時 (UTC) において、世界時のUT1との差を調整するために追加もしくは削除される秒である。この現行方式のUTCは1972年に始まった。2012年までに実施された計25回の閏秒は、いずれも1秒追加による調整であった。26回目の閏秒の挿入は、2015年7月1日午前9時直前(日本時間)に行われる。
引用元:Wikipedia
https://ja.wikipedia.org/wiki/閏秒
このうるう秒問題は、数年に1回起こったり起こらなかったりします。
多くの方はうるう年と一緒で「1秒多いんだ〜」くらいにしか感じないと思いますが、なんとこのうるう秒、コンピュータへの影響が絶大なんです。
うるう年とは違い、うるう秒の計算は難しい!
4年に一度、機械的に1日延ばせばいいうるう年と違って、イレギュラーで足される1秒は計算が難しいんですね。
(※うるう年も実際は、100で割り切れる年はない〜とか、でも400で割り切れたらうるう年〜とかさまざまな例外がありますが、次来るときにはもう俺死んでる)
アプリケーション単位ではほぼ気にすることはないのですが、サーバのOS部分に関わるものがこの影響を受けた場合、被害が大きくなります。
前回(2012年)での被害
前回うるう秒があったのは2012年。そのときは、Linuxサーバのntpdで問題が発生したらしく、結構な被害にあったようです。
- 「うるう秒」障害がネットで頻発 – WIRED
http://wired.jp/2012/07/02/leap-second-bug-wreaks-havoc-with-java-linux/
LIGはWebサイト制作を支援しています。ご興味のある方は事業ぺージをぜひご覧ください。