ממיר חותמת זמן UNIX

מיליס נוכחי

1697343646353
UTC: 15 Oct 2023 4:34:58 Local: UNIX: 1697346138715
Local timezone (UTC+7h):
קישור לרגע זה

המרת מילישניות לתאריך

המרת תאריך למילישניות

/ /
: :

לוח שנה של תאריך ושעה

epoch-ים ותקנים לעיון. המרת פורמטים של תאריך/שעה תוך כדי. חותמות זמן במילישניות וביחידות אחרות.

Milliseconds since Epoch Julian Date HTTP format ISO 8601 GPS time

מדריכים

אזורי זמן, חותמות זמן יוניקס במילישניות ו-UTC. דוגמאות תכנות והסברים.

System.currentTimeMillis() What is a Unix Timestamp What is UTC

תקנים

תקני הנדסת תוכנה לניהול זמן. מפרטים ארכיטקטוניים לעיון ותאימות של צד שלישי.

Client-Centric Time Persistence of Time Sync Service
עיון

כיצד לקבל את הזמן הנוכחי במילישניות

שיטות לקבלת הזמן במילישניות מאז ה-UNIX epoch (1 בינואר 1970 00:00:00 UTC) בשפות תכנות שונות.

ActionScript(new Date()).time
Bashdate +%s%N | cut -b1-13
C++std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count()
C#.NETDateTimeOffset.UtcNow.ToUnixTimeMilliseconds()
Clojure(System/currentTimeMillis)
DartDateTime.now().millisecondsSinceEpoch
Erlangerlang:system_time(millisecond)
Excel / Sheets*= (NOW() - OFFSET/24 - DATE(1970,1,1)) * 86400000
Go / Golangtime.Now().UnixMilli()
Hive*unix_timestamp() * 1000
Java / KotlinSystem.currentTimeMillis()
JavaScriptDate.now() // or: new Date().getTime()
MySQL*UNIX_TIMESTAMP() * 1000
Objective-C(long long)([[NSDate date] timeIntervalSince1970] * 1000.0)
OCaml(1000.0 *. Unix.gettimeofday ())
Oracle PL/SQL*SELECT (SYSDATE - TO_DATE('01-01-1970','DD-MM-YYYY')) * 86400000 FROM DUAL
Perluse Time::HiRes qw(gettimeofday); print gettimeofday;
PHPround(microtime(true) * 1000)
PostgreSQLextract(epoch FROM now()) * 1000
PowerShell[DateTimeOffset]::UtcNow.ToUnixTimeMilliseconds()
Pythonint(round(time.time() * 1000))
QtQDateTime::currentMSecsSinceEpoch()
R*as.numeric(Sys.time()) * 1000
Ruby(Time.now.to_f * 1000).floor
RustSystemTime::now().duration_since(UNIX_EPOCH).unwrap().as_millis()
ScalaSystem.currentTimeMillis
SQL ServerSELECT DATEDIFF_BIG(MILLISECOND,'1970-01-01',SYSUTCDATETIME())
SQLite*STRFTIME('%s', 'now') * 1000
Swift*NSDate().timeIntervalSince1970 * 1000
VBScript / ASPDateDiff("s", "01/01/1970 00:00:00", Now()) * 1000
CockroachDBextract(epoch_nanoseconds from now()) / 1000000

* דוגמאות עם כוכבית עשויות שלא להגיע לדיוק של מילישנייה אך הערך מוכפל כדי להגיע לטווח המילישניות.

עידנים

epoch-ים נפוצים ופורמטים של תאריך/שעה

הנפוץ ביותר הוא ה-UNIX epoch אך למערכות ושירותים מסוימים יש epoch-ים שונים.

Epoch
ערך
עיון
UNIX Epoch
ms
since January 1, 1970
LDAP / NT epoch
ticks
since January 1, 1601
NTP epoch
ms
since January 1, 1900
.NET MinValue
ticks
since January 1, 0001
Mac OS X
ms
since January 1, 2001
ISO 8601 (UTC)

* 1 tick = 0.0001 מילישניות = 100 ננושניות

בסיס ידע

זמן וחלל

עובדות מדעיות ומחלוקות סביב מדידת הזמן.

מה פירוש המילה "מיליס"?

מיליס הוא הקיצור הפופולרי למילישניות. הקיצור הרשמי הוא ms. קיצור נוסף הוא millisecs אך הוא נדיר מאוד.

מהן שניות מעוברות?

שניות מעוברות הן תיקונים של שנייה אחת המתווספים לזמן UTC כדי לסנכרן אותו עם זמן השמש. שניות מעוברות נוטות לגרום לבעיות בתוכנה. לדוגמה, ב-30 ביוני 2012 היה הזמן 23:59:60. Google משתמשת בטכניקה הנקראת leap smear בשרתיה, אשר במקום להוסיף שנייה נוספת, מאריכה את השניות לפני סוף היום בכמה מילישניות כל אחת כך שהיום יארך 1000 מילישניות יותר.

כיצד תורת היחסות משפיעה על הזמן?

תורות היחסות הפרטית והכללית נלקחות בחשבון על ידי מקלטי GPS (הנמצאים במטוסים, מכוניות וטלפונים ניידים) ולוויינים המקיפים את כדור הארץ כדי לסנכרן את זמנם בטווח של 20-30 ננושניות. זה קורה מכיוון שהלוויינים נמצאים בתנועה ביחס לכוכב הלכת, ולכן המתבוננים על הכוכב יתפסו שהזמן עובר לאט יותר עבור הלוויינים.

מה ההבדל בין UTC ל-GMT?

UTC מייצג Coordinated Universal Time (זמן אוניברסלי מתואם). GMT מייצג Greenwich Mean Time (זמן ממוצע גריניץ'). UTC הוא תקן שמירת זמן אוניברסלי בפני עצמו. זמן המבוטא ב-UTC הוא למעשה הזמן בכל כדור הארץ. זמן המבוטא ב-GMT הוא הזמן באזור הזמן של קו האורך של גריניץ'. בבעיות מדעי המחשב הנוכחיות, UTC ו-GMT המבוטאים בערך מוחלט מקרה להיות בעלי ערכים זהים ולכן הם שימשו לסירוגין.

UTC לעומת GMT: ההסבר המורכב

UTC הופיע למעשה ב-1960, כאשר GMT היה הדבר העיקרי עד אז. בניגוד ל-GMT המבוסס על זמן שמש, UTC מחשב שנייה כמשך 9,192,631,770 תקופות של הקרינה המקבילה למעבר בין שני רמות ההיפרדק דק של מצב הבסיס של אטום הצסיום 133. השנייה של UTC מדויקת הרבה יותר מהשנייה המקורית של GMT.

מה הוא UT1 וכיצד הוא קשור ל-UTC?

UT1 הוא הצורה המדויקת ביותר של הזמן האוניברסלי. הוא מחושב באמצעות תצפיות על קווזרים בחלל החיצון ועל מרחקים בין כדור הארץ ולוויניו. UTC רק מנסה לקרב ל-UT1: הוא נשמר בתוך 0.9 שניות מ-UT1 על ידי שימוש בשניות מעוברות.

מדוע טווח אזור הזמן הוא 26 שעות ולא 24?

אזורי זמן יכולים להגיע ל-UTC+14. UTC+14 הוא הזמן של אי חג המולד (קיריבאטי) כל השנה ושעון הקיץ של סמואה. לפיכך ההפרש המרבי בין 2 שעות מקומיות על כדור הארץ הוא 26 שעות.

עקרונות עיצוב

התמדה מפורשת

היכולת להשתמש בתוכנה כשירות ללא פרוטוקולים כבדים כגון אימות. הימנעות ממצב בצד השרת (סשנים) או מצד הלקוח (עוגיות) מעניקה לנו הזדמנות מדהימה לשמור נתונים במשהו שמשותף לבני אדם ומעובד על ידי מכונות ללא חיכוך: כתובת URL.

חלימת ירח מעשית

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

עקביות

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

הסיפור מאחורי מיליס נוכחי

אתר זה מספק את הזמן הנוכחי במילישניות שחלפו מאז ה-UNIX epoch (1 בינואר 1970) וכן בפורמטים נפוצים אחרים כולל השוואות זמן מקומי/UTC. ניתן גם להמיר מילישניות לתאריך ושעה ולהיפך.

סיפור מיליס נוכחי התחיל בניפוי באגים של אפליקציית Android. ב-Android אתה אומר לשעון המעורר מתי לצאת על ידי העברת מספר פשוט. מספר זה צריך לכלול את כל הזמן שחלף מחצות 1 בינואר 1970 אך קטן מספיק כדי להתאים במבני הנתונים הקיימים.

המטרה לאתר זה היא שמתכנתים ברחבי העולם יידעו: בכל פעם שתרצה לראות את זמן UTC הנוכחי או את הזמן הנוכחי ב-ms, תוכל לעשות זאת בקלות ב-currentmillis.org.

תמיכה באתר

אם תרצה לתמוך, תוכל תמיד לשלוח משוב. אל תהסס לפנות דרך Noop Mail at [email protected]