Tags:
Topics: 
Node Thumbnail

Meta เขียนบล็อกถึงความยากลำบากในการจัดการ "อธิกวินาที" (leap second) กระบวนการเติมวินาทีเข้าไปในวันที่มีมาตั้งแต่ปี 1972 เพื่อปรับให้เวลา UTC มีเวลาตรงกับการหมุนของโลก พร้อมกับสนับสนุนให้ไปใช้เขตเวลา TAI (temps atomique international เป็นภาษาฝรั่งเศสของ International Atomic Time) ที่ไม่มี leap second มาตั้งแต่ปี 2017

ความลำบากในการจัดการ leap second นั้นเกิดจากตัวเทียบเวลาที่แท้จริงเป็นนาฬิกาอะตอมในดาวเทียม Stratum 0 แต่การปรับเวลาชดเชยนั้นมักจะจัดการในเซิร์ฟเวอร์ NTP ที่ Stratum 2 ช่วงเวลาที่ชดเชย แต่การเติมเวลาหนึ่งวินาทีเข้าไปในหนึ่งวันนั้นทำไม่ได้เพราะระบบปฎิบัติการแบบ POSIX เช่น ลินุกซ์หรือแมคนั้นต้องการให้หนึ่งวันมี 86,400 วินาทีพอดี จึงต้องค่อยๆ "หยอด" (smear) เวลาเติมเข้าไปให้ครบหนึ่งวินาที กระบวนการนี้สร้างความซับซ้อนเพิ่มเติม เพราะเซิร์ฟเวอร์ NTP อาจจะคอนฟิกให้หยอดเวลาไว้หรือไม่ได้คอนฟิกไว้ก็ได้ ทำให้วันที่มี leap second จะเกิดความผิดปกติเวลาที่ได้แต่ละเซิร์ฟเวอร์ไม่ตรงกัน

ฝั่ง Meta เองนั้นพยายามสร้างโปรโตคอลเทียบเวลาที่แม่นระดับนาโนวินาที กระบวนการ smear จึงอาศัยการแอบเติมวินาทีในตัวเอง (self-smearing) โดยไลบรารี fbclock จะแอบเติมเวลา 1 นาโนวินาทีเข้าไปทุกๆ 62.5 ไมโครวินาที แต่ปัญหาก็ยังอยู่ คือเซิร์ฟเวอร์ที่ใช้เทคนิคต่างกันอาจจะพบว่ามีเวลาต่างกันถึง 100 ไมโครวินาทีในช่วงเวลาที่ต้องเติมเวลานี้

Meta เองเป็นผู้ผลักดันหนึ่งที่ทำให้หน่วยงานมาตรฐานชั่งตวงนานาชาติประกาศเลิกใช้ leap second ในปี 2035 อย่างไรก็ดีทาง Meta สนับสนุนให้เลิกใช้งานตั้งแต่วันนี้โดยเปลี่ยนเขตเวลาเป็น TAI แทน ซึ่งก็ทำให้จะไม่มี leap second ตั้งแต่วันนี้เลย

ที่มา - Meta

No Description

Get latest news from Blognone

Comments

By: hisoft
ContributorWindows PhoneWindows
on 5 February 2025 - 00:29 #1332993
hisoft's picture

นึกถึงการเอากระบวนการค่อยๆ smear มาเติม DST บ้างจะได้ไม่วุ่นวาย
แต่ เอ่อ เลิก DST ไปเลยน่าจะง่ายกว่า 😩

By: lew
FounderJusci's WriterMEconomicsAndroid
on 5 February 2025 - 11:13 #1333002 Reply to:1332993
lew's picture

ถ้า DST ใช้ smearing จริงๆ ก็จะเห็นปัญหาที่ Meta บ่นครับ 1 วันเติม 1 ชั่วโมงนี่เวลานัด ตารางบิน ฯลฯ เพี้ยนกันทั้งประเทศแน่นอน ใคร smear ด้วย algo ไหนมั่วไปหมด ตกเครื่องกระจาย


lewcpe.com, @wasonliw

By: btoy
ContributorAndroidWindows
on 5 February 2025 - 06:28 #1332995
btoy's picture

ปัญหา​ระดับ​โลกของจริง​ เรื่องเวลาเนี่ย


..: เรื่อยไป

By: TeamKiller
ContributoriPhone
on 5 February 2025 - 10:24 #1332999
TeamKiller's picture

ตอน server มัน Sync เวลาจากต้นทางนี่ถ้าใน Datacenter เดียวคงไม่เท่าไรแต่ข้ามทวีปข้ามไกลๆ แต่ละ site ก็มี แยก time server ใช่เปล่า ไม่งั้นก็ดีเลย์กันอยู่ดี

By: waroonh
Windows
on 5 February 2025 - 13:59 #1333011

แต่ตอนเริ่ม เรื่องวินาทีนี่ผม แอบฮานะ เริ่มจาก
นาฬิกาโลก เดินเพี้ยนทุกเรือน ประเทศใครประเทศมัน เลย
มาประชุมกันทั้งโลก สรุปว่า ...
เราจะแบ่งโลกหมุนรอบตัวเอง 1 รอบ คือ 1 วัน
แล้วนิยามว่า 1 วินาที คืออัลลัย ฟันเปรี๊ยงไปเสร็จ
ไปทำนาฟิกา ที่ 1 วิ คือการนับสัญญาณระดับ atom
บนสถานีอวกาศ พอนับ 86,400 วินาที คือ 1 วันพบว่า
โลกหมุนแก่วงไปมา ประมาณ 3 วินาที แล้วก็ เราต้องเติม
เวลา +60 วินาที ลงไปทุก ๆ 100 ปี ...
สรุป นาฬิกาโลก เพี้ยนทุกเรือน เหมือนเดิม บันเทิงเลย