nicetool.dev logo
...

Unix Timestamp là gì?

Unix Timestamp (còn gọi là thời gian POSIX hoặc Epoch time) là hệ thống theo dõi thời gian bằng tổng số giây đang chạy. Số đếm này bắt đầu tại 'Unix Epoch'. Đây là định dạng thời gian tiêu chuẩn được sử dụng bởi hầu hết các hệ thống máy tính, máy chủ và cơ sở dữ liệu trên toàn thế giới.

Unix Epoch

Điểm bắt đầu được định nghĩa là 00:00:00 UTC ngày 1 tháng 1 năm 1970. Các ngày trước thời điểm này được biểu diễn bằng số âm.

Chuyển đổi Thời gian sang Giây phổ biến

Thời gian dễ đọcGiây
1 Giờ3,600 Giây
1 Ngày86,400 Giây
1 Tuần604,800 Giây
1 Tháng (30.44 ngày)2,629,743 Giây
1 Năm (365.24 ngày)31,556,926 Giây

Sự cố năm 2038

Tương tự như sự cố Y2K, 'Sự cố năm 2038' dự kiến sẽ xảy ra vào ngày 19 tháng 1 năm 2038. Tại thời điểm này, Unix Time sẽ vượt quá giá trị tối đa của số nguyên 32-bit có dấu. Các hệ thống 32-bit cũ có thể hiểu ngày này là năm 1901, gây ra lỗi nghiêm trọng.

03:14:07 UTC 19/01/2038
Max Int32: 2,147,483,647

Các trường hợp sử dụng phổ biến

Cơ sở dữ liệu

Lưu trữ thời gian dưới dạng số nguyên (INT) tiết kiệm không gian và cải thiện đáng kể hiệu suất truy vấn/sắp xếp.

Hệ thống tệp & Nhật ký

Đặt tên tệp sao lưu hoặc nhật ký hệ thống để đảm bảo tính duy nhất và dễ dàng sắp xếp theo thời gian.

APIs & Tokens

Được sử dụng trong JWT (JSON Web Tokens) để xác định thời gian hết hạn (exp claim) và thời gian hiệu lực.

Cách dùng công cụ Unix Time

  1. 1

    Đồng hồ ở đầu trang hiển thị thời gian Unix hiện tại theo giây và mili giây. Dùng giá trị này khi bạn cần mốc "bây giờ" cho bài test hay câu truy vấn.

  2. 2

    Dán timestamp vào ô chuyển đổi. Công cụ tự nhận biết đơn vị giây (10 chữ số) hay mili giây (13 chữ số) và hiển thị ngày giờ theo UTC, theo múi giờ của bạn và dạng tương đối như "3 ngày trước".

  3. 3

    Muốn đổi ngược lại, chuyển sang chế độ Ngày, nhập năm, tháng, ngày, giờ, chọn múi giờ rồi bấm Chuyển đổi để nhận timestamp tương ứng.

  4. 4

    Sao chép mọi giá trị chỉ với một cú nhấp. Đồng hồ thế giới bên dưới cho thấy cùng thời điểm ở các thành phố lớn, tiện khi cần đối chiếu log từ máy chủ ở khu vực khác với giờ Việt Nam.

Ví dụ thực tế

Đọc file log

Log máy chủ và công cụ giám sát thường ghi sự kiện dạng 1712345678. Dán con số vào để biết chính xác giờ UTC và giờ Việt Nam của sự cố.

Kiểm tra JWT hết hạn

Trường exp và iat trong JSON Web Token là timestamp tính bằng giây. Chuyển đổi chúng giúp biết ngay token đã hết hạn hay chưa.

Viết câu truy vấn

Cần lấy đơn hàng tạo sau 00:00 UTC ngày 1/3/2026? Đổi ngày đó thành 1772323200 rồi dùng trong mệnh đề WHERE với cột kiểu số nguyên.

Kiểm tra dữ liệu API

JavaScript trả về mili giây (Date.now()), còn phần lớn backend trả về giây. Công cụ hiển thị cả hai nên dễ phát hiện lỗi lệch 1000 lần.

Câu hỏi thường gặp

Unix timestamp là gì?+

Đó là số giây đã trôi qua kể từ 00:00:00 UTC ngày 1/1/1970, gọi là Unix epoch. Vì chỉ là một con số không gắn múi giờ, đây là cách đơn giản nhất để máy tính lưu và so sánh thời điểm.

Làm sao biết là giây hay mili giây?+

Với các ngày hiện tại, timestamp tính bằng giây có 10 chữ số, còn mili giây có 13 chữ số. Công cụ Unix, PHP và phần lớn cơ sở dữ liệu dùng giây; JavaScript và Java dùng mili giây.

Sự cố năm 2038 là gì?+

Hệ thống lưu timestamp bằng số nguyên có dấu 32 bit sẽ bị tràn số vào 03:14:07 UTC ngày 19/1/2038. Ngôn ngữ hiện đại và cơ sở dữ liệu 64 bit không bị ảnh hưởng, nhưng một số hệ thống nhúng cũ và định dạng file vẫn còn.

Unix timestamp có tính giây nhuận không?+

Không. Thời gian Unix coi mỗi ngày có đúng 86.400 giây nên bỏ qua giây nhuận. Với hầu hết ứng dụng, điều này không tạo ra khác biệt thực tế.

Bài viết liên quan