Apa Itu Unix Timestamp dan Mengapa Perangkat Lunak Memakainya?
Jika pernah membuka file log, memeriksa respons API, atau menjelajah basis data dan melihat angka seperti 1760356800 di tempat yang Anda kira tanggal, Anda sudah bertemu Unix timestamp. Tampak misterius, tetapi gagasannya sederhana, dan memahaminya mempermudah banyak masalah teknologi sehari-hari.
Gagasan dasarnya
Unix timestamp hanyalah hitungan detik. Tepatnya, jumlah detik yang telah berlalu sejak 1 Januari 1970, pukul 00:00:00 UTC, momen yang disebut programmer "epoch Unix". Tanggal itu dipilih puluhan tahun lalu sebagai titik nol yang praktis saat Unix dikembangkan, lalu bertahan sebagai standar hampir universal.
Jadi ketika Anda melihat 1760356800, artinya "sekian detik setelah tengah malam 1 Januari 1970". Konversikan, dan Anda mendapat tanggal dan jam kalender sebenarnya.
Mengapa tidak menyimpan "13 Oktober 2026" saja?
Tampak lebih alami menyimpan tanggal seperti yang dibaca manusia, jadi mengapa banyak sistem memakai angka biasa? Beberapa alasan praktis:
- Tidak ambigu. "10/13/2026" berarti 13 Oktober di AS tetapi bisa dibaca lain di tempat lain. Timestamp hanyalah bilangan bulat.
- Mengabaikan zona waktu sampai diperlukan. Angka itu mewakili satu momen persis di seluruh Bumi. Konversi ke zona waktu lokal baru dilakukan saat ditampilkan, menghindari banyak bug tanggal bergeser beberapa jam.
- Mudah dihitung. Ingin tahu apakah satu peristiwa terjadi sebelum yang lain, atau selisih detiknya? Cukup pengurangan.
- Ringkas dan cepat disimpan dan dibandingkan di basis data.
Di mana Anda akan menemuinya
- Respons API: banyak layanan web mengembalikan
created_atatauupdated_atsebagai timestamp mentah. - Log server dan aplikasi: men-debug gangguan sering berarti menyejajarkan timestamp dari beberapa file log.
- Basis data: menyimpan timestamp, bukan string terformat, adalah praktik standar.
- Metadata file: beberapa sistem operasi mencatat waktu pembuatan atau perubahan dengan cara ini.
Jebakan: detik vs. milidetik
Sebagian sistem (terutama Date.now() JavaScript) memakai milidetik sejak epoch, sehingga momen yang sama bisa tampil sebagai 1760356800 di satu alat dan 1760356800000 di alat lain. Jika timestamp tampak berasal dari masa depan jauh atau punya tiga nol tambahan, kemungkinan itu milidetik dan perlu dibagi 1.000 sebelum dikonversi.
Mengonversinya sendiri
Anda tidak perlu menghitung manual. Jika menemukan timestamp mentah di log atau respons API dan ingin tahu tanggal dan jam sebenarnya (atau sebaliknya), konverter Unix timestamp kami menangani kedua arah seketika, termasuk pembedaan detik dan milidetik, langsung di browser.