Unix Timestamp คืออะไร?
Unix Timestamp (หรือที่เรียกว่าเวลา POSIX หรือเวลา Epoch) เป็นระบบสำหรับติดตามเวลาเป็นจำนวนวินาทีที่นับต่อเนื่อง การนับนี้เริ่มต้นที่ 'Unix Epoch' เป็นรูปแบบเวลามาตรฐานที่ใช้โดยระบบคอมพิวเตอร์, เซิร์ฟเวอร์, และฐานข้อมูลส่วนใหญ่ทั่วโลก
The Unix Epoch
จุดเริ่มต้นถูกกำหนดเป็น 00:00:00 UTC ในวันที่ 1 มกราคม 1970 วันที่ก่อนหน้านี้จะแสดงเป็นจำนวนลบ
การแปลงเวลาเป็นวินาทีทั่วไป
| เวลาที่มนุษย์อ่านได้ | วินาที |
|---|---|
| 1 ชั่วโมง | 3,600 วินาที |
| 1 วัน | 86,400 วินาที |
| 1 สัปดาห์ | 604,800 วินาที |
| 1 เดือน (30.44 วัน) | 2,629,743 วินาที |
| 1 ปี (365.24 วัน) | 31,556,926 วินาที |
ปัญหาวันที่ปี 2038
คล้ายกับบั๊ก Y2K 'ปัญหาวันที่ปี 2038' คาดว่าจะเกิดขึ้นในวันที่ 19 มกราคม 2038 ในขณะนั้น เวลา Unix จะเกินค่าสูงสุดของจำนวนเต็ม 32 บิตแบบมีเครื่องหมาย ระบบ 32 บิตรุ่นเก่าอาจตีความวันที่นี้เป็นปี 1901 ซึ่งทำให้เกิดข้อผิดพลาดร้ายแรง
กรณีการใช้งานทั่วไป
ฐานข้อมูล
การเก็บเวลาเป็นจำนวนเต็ม (INT) ช่วยประหยัดพื้นที่และปรับปรุงประสิทธิภาพการสืบค้น/การเรียงลำดับอย่างมีนัยสำคัญ
ระบบไฟล์และบันทึก
การตั้งชื่อไฟล์สำรองหรือบันทึกของระบบเพื่อรับประกันความเป็นเอกลักษณ์และการเรียงลำดับตามลำดับเวลาที่ง่ายดาย
APIs และ Tokens
ใช้ใน JWTs (JSON Web Tokens) เพื่อกำหนดเวลาหมดอายุ (exp claim) และระยะเวลาที่ใช้ได้