מעבר לקפיצה

משנת 2008, במקום להחיל שניות מדלגות על השרתים שלנו באמצעות שלבי השעון, יש לנו "smeared" השניות השנייה במהלך השעות לפני ואחרי כל הקפיצה. בדיקת הדילוג חלה על כל שירותי Google, כולל כל ממשקי ה-API שלנו.

המבצע הרגיל שלנו

יש ארגונים רבים שמשתמשים בשעונים במריחות, ומועיל אם הריחות היו זהים. בסופו של דבר, מטרת השעונים היא לקרוא את אותו זמן במקומות שונים.

אנחנו ממליצים לכל מי שמריח שניות מעוברות להשתמש במריחה לינארית מסביב לשעון מ-12:00 עד 12:00 לפי שעון UTC.

ההתאמה בין הפיצ'רים האלה משפרת את חוויית השימוש באפליקציות רבות של מחשוב:

  • משך הזמן הארוך קבוע עם שינוי תדירות. השינוי ב-Smrim הוא כ-23:60. זה נמצא בתוך שגיאות הייצור והתרמיות של רוב המכונות +33, מתנדבי הקוורץ, ובקצב הקצב המקסימלי של 500 ppm.
  • אם תתמקדו בהרחבה בשנייה מעוברת, במקום להתחיל את ההתחלה או לסיים אותה בשנייה מעוברת, המערכת תמזער את ההיסט המקסימלי.
  • בהשוואה למריחה של קוסמוי, המריחה הלינארית פשוטה יותר לחישוב ומפחיתה את השינוי בתדירות המקסימלית.
  • אנשים אחרים שמיישמים מריחות משתמשים במשך 24 השעות האחרונות. השתמשנו בעבר בבדיקת Sim של 20 שעות, אבל שינינו בהתאם למרווח הפופולרי יותר בין צהריים לצהריים.

אנחנו מתכננים להשתמש בכרטיס הזה בכל דילוגים עתידיים. Amazon נעשה שימוש בבדיקה הזו ב-AWS. אחת מהדרכים להשתמש במידע הזה במערכות שלכם היא להגדיר אותן כך שישתמשו ב-Google Public NTP.

דוגמה למחלה הרגילה

בדוגמה הזו, נניח שבחודש דצמבר 2022 יש שנייה מעוברת, אבל לוח הזמנים עדיין לא הוכרז.

תקופת ה ללא התחלה מתחילה מ-2022-12-31 12:00:00 UTC וממשיכת עד 2023-01-01 12:00:00 UTC. לפני ואחרי התקופה הזו, שעונים עם מריחים ושירות זמן מסכימים עם שעונים שמעבירים אלפיות שנייה.

במהלך האחסון, השעונים פועלים לאט יותר מהרגיל. כל שנייה בטווח הזמן המצולם היא בערך 11.6μs. היא ארוכה מ-SI שנייה כפי שהושגה בזמן הקרקע.

בתחילת המחצית השנייה, זמן המזכה הוא קצת פחות מ-0.5 שניות מאז שעון UTC. שעון UTC מוסיף שנייה נוספת, ואילו בזמן השהייה ממשיך ללא הפרעה. כתוצאה מכך, משך הזמן באלפיות השנייה היה נמוך מ-0.5 שניות באזור הזמן של UTC, אחרי שהפרק השני שקדם לו הסתיים.

המשך הפעילות של השעונים באותו קצב איטי מאט את הקצב של המריחה ב-12 השעות הקרובות. עד 12:00:00, השעון מ להיעזר בשעונים מסולסלים ובהסכמה.

תאילנד שעון UTC לא ממוחשב שעת המריחה
31.12.2022 12:00:36.000000 21.12.2022: 11:59:59.000000 21.12.2022: 11:59:59.000000
31.12.2022 12:00:37.000000 32.12.2022 12:00:00.000000 32.12.2022 12:00:00.000000
32.12.2022 12:00:38.000011 31.12.2022 12:00:01.000011 32.12.2022 12:00:01.000000
2023-01-01 00:00:35.499976 21.22.2022 23:59:58.499976 31.5.2022 23:59:58.000000
2023-01-01 00:00:36.499988 21.2.2022 23:59:59.499988 31.5.2022 23:59:59.000000
01.01.2023 00:00:37.000000 31.5.2022 23:59:60.000000 31.5.2022 23:59:59.500005
2023-01-01 00:00:37.500000 31.5.2022 23:59:60.500000 2023-01-01 00:00:00.000000
2023-01-01 00:00:38.000000 2023-01-01 00:00:00.000000 2023-01-01 00:00:00.499994
2023-01-01 00:00:38.500011 2023-01-01 00:00:00.500011 2023-01-01 00:00:01.000000
2023-01-01 00:00:39.500023 2023-01-01 00:00:01.500023 01.01.2023 00:00:02.000000
2023-01-01 12:00:36.999988 2023-01-01 11:59:58.999988 21.3.2023 11:59:59.000000
21.11.2023 12:00:38.000000 21.11.2023 12:00:00.000000 21.11.2023 12:00:00.000000
21.11.2023 12:00:39.000000 1.1.2023 12:00:01.000000 1.1.2023 12:00:01.000000

במהלך 86,401 השניות של מערכת ה-Smum

אם שנייה תבוצע קפיצה שלילית, ייתכן שהשנייה תספור מהר יותר מ-86,399 שניות של שעון SI.

ריחות אחרים

הוצעו או יושמו כמה שריפות אחרות.

  • UTC-SLS הוא סימן ליניארי מעל 1,000 לפני הקפיצה (23:43:20 עד 00:00:00).
  • Google's 2008 Sm על הייתה דמדומים של 20 שעות לפני הקפיצה (04:00:00 עד 00:00:00). זו הייתה הפעם היחידה שבה השתמשנו בכתית קוסינוס.
  • ב-Google's המעבר השני smear היה משבצת ליניארית של 20 שעות שבמרכזה הקפיצה. השתמשנו בשנים 2012, 2015 ו-2016.
  • Bloomberg's smear הוא כתם לינארי מעל ל-2,000 שניות אחרי הקפיצה (00:00:00 עד 00:33:20).
  • ב-Meinberg הופעל מריחה קוסמונית של משך זמן ניתן להגדרה.

תמיכה בתוכנה למריחה

ספריית האחסון הפתוחה שלנו תמיר בכיוון השעון בין מריחה לבין TAI או GPST ללא מריחה.