15 puan yazan xguru 2022-07-26 | 5 yorum | WhatsApp'ta paylaş
  • Artık saniye (Leap Second), Dünya'nın dönüş hızı nedeniyle oluşan UT1 (evrensel zaman) ile UTC arasındaki farkı düzeltmek için kullanıma alındı
  • Bu sayede UTC, gök gözlemleri gibi çeşitli amaçlarla kullanılabildiği için esas olarak bilim insanları ve astronomlara fayda sağladı
  • UTC düzeltilmezse, astronomik gözlemler için UTC ile senkronize çalışan eski ekipman ve yazılımların ayrıca düzeltilmesi gerekir
  • Artık saniye önerildikten bu yana UTC toplam 27 kez düzeltildi
  • Artık saniye 1972'de hem bilim dünyasını hem de telekomünikasyon sektörünü tatmin eden kabul edilebilir bir çözümdü, ancak bugün UTC ne dijital uygulamalar ne de bilim insanları için iyi bir durumda
    → Bunun yerine çoğu zaman TAI (International Atomic Time, Uluslararası Atomik Zaman) ya da UT1 tercih ediliyor
  • Meta, gelecekte yeni artık saniyeler eklenmesini durdurup mevcut seviye olan 27'yi korumaya yönelik sektör çabalarını destekliyor
  • Yeni bir artık saniye eklemek, faydasından çok zararı olan riskli bir uygulama ve bunun yerini alacak yeni teknolojileri benimsemenin zamanı geldiği düşünülüyor

Leap of Faith

  • Dünya'nın dönüşündeki düzensizliğe katkıda bulunan birçok etkenden biri, dünyanın en yüksek dağlarındaki kalıcı kar ve buzulların sürekli eriyip yeniden donmasıdır
  • Bunu, dönen bir artistik patinajcıyı düşünerek kolayca görselleştirebilirsiniz
  • Şimdiye kadar yalnızca pozitif artık saniyeler olduğu için 23:59:59 ile 00:00:00 arasına sadece 23:59:60 şeklinde ek bir saniye yerleştirmek yeterliydi, ancak
    Dünya'nın dönüş düzeni değiştikçe gelecekte bir noktada negatif artık saniye oluşma olasılığı yüksektir
    Bu durumda 23:59:58'in ardından 00:00:00 gelmelidir.
  • Bu negatif artık saniyenin etkileri büyük ölçekte hiç test edilmedi ve zamanlayıcılara ya da zamanlama planlayıcılarına bağımlı yazılımlar için yıkıcı etkiler yaratabilir

Smearing

  • Daha yakın dönemde, saatleri biraz yavaşlatıp hızlandırarak artık saniyeyi kademeli biçimde 'yaymak (Smear)' yaygın bir uygulama haline geldi
  • Bunu yapmanın evrensel bir yöntemi yok, ancak Meta'da artık saniye 00:00:00'dan itibaren 17 saat boyunca Smear ediliyor
  • Yüzlerce NTP sunucusu birlikte Stratum 2 seviyesinde çalıştığı için, Smearing çok büyük yapılırsa NTP istemcileri bunu hata olarak değerlendirip quorum dışına atabilir ve bu da kesintiye yol açabilir
  • 00:00:00'da başlamak da standartlaştırılmış değil; dolayısıyla birden fazla seçenek olabilir
    → Örneğin belirli bir şirket 12:00:00 UTC'de başlayıp bunu 24 saat boyunca sürdürebilir
  • Ayrıca Smearing'in kendi içinde de başka algoritmaları vardır: çekirdek artık saniye düzeltmesi, Linear Smearing, Quadratic (Meta'nın kullandığı)
  • Tüm bunlar, Meta'nın kendi Time Appliance'ı dahil önemli dönüşüm mantıkları gerektirir
  • Bu Smearing süresi sırasında NTP sunucusu yeniden başlatılırsa istemcilere "Old" ve "New" zamanlar birlikte gidebilir ve bu da kesinti yaratabilir

The negative impact of Leap Seconds

  • Artık saniye ve onun offset'i sektör genelinde sorunlara yol açar
  • Kesinti yaşanmasının en kolay yolu, zamanı her zaman sadece ileri gider varsayımıyla kod yazmaktır

start := time.Now()
// do something
spent := time.Now().Sub(start)

  • Yukarıdaki spent değerinin nasıl kullanıldığına bağlı olarak artık saniye döneminde negatif bir değer oluşabilir
  • Reddit, 2012'de artık saniye nedeniyle büyük çaplı bir kesinti yaşadı ve siteye 30-40 dakika boyunca erişilemedi
  • Cloudflare, 2017'de bunun şirketin herkese açık DNS hizmetine etkisi hakkında ayrıntılı bir yazı yayımladı

Moving beyond the leap second

  • Artık saniye olayları sektör genelinde sorun çıkarıyor ve hâlâ ciddi riskler barındırıyor
  • Operasyonda bizler, artık saniye her uygulamaya alındığında sorunlarla karşılaşıyoruz
  • Üstelik bu çok nadir görülen bir olay olduğu için, gerçekleştiği her seferde topluluklar hazırlıksız yakalanıyor
  • Tüm sektörlerde saat hassasiyetine olan ihtiyaç artarken, artık saniye artık faydadan çok zarar veriyor ve kesintilere neden oluyor
  • Meta mühendisleri olarak biz, gelecekte artık saniye eklenmesini durdurmak ve önümüzdeki bin yıl için yeterli olacağını düşündüğümüz mevcut seviye olan 27'yi korumak yönünde güçlü destek veriyoruz

5 yorum

 
galadbran 2022-07-26

Vay, ne kadar ilginç bir konu! Ama şey... artık saniye eklemenin büyük bir mesele olduğunu anlıyorum, fakat 27 saniyeyi korumak için tam olarak ne kadar büyük bir çaba harcandığını anlayamadım.

 
budlebee 2022-07-26

Sanırım bunlardan bahsediyor olmalı

https://tr.news.hada.io/topic?id=1752

 
dodok8 2022-07-26

Yazının başlığı biraz tuhaf.

 
dodok8 2022-07-26

Twitter botu ya da Slack botunun gönderdiği mesajın başlığı normal görünüyor ama sitede görünümü garip.

 
xguru 2022-07-26

Aa, görünüşe göre bir tuhaflık varmış. Düzelttim.