Apapun cara Anda melakukannya, itu akan gagal dengan cara yang berbeda tergantung pada apa yang berubah.
-
Jika Anda menyimpan stempel waktu di zona waktu yang sesuai sebagai
2013-12-29 12:34:56 America/New_York
, ini akan gagal jika, katakanlah, Bronx tiba-tiba memulai zona waktu mereka sendiriAmerica/New_York_Bronx
dengan offset yang berbeda dan acara Anda kebetulan berada di Bronx.Putuskan seberapa besar kemungkinannya dan seberapa buruk kegagalannya.
-
Jika Anda menyimpan stempel waktu dalam UTC dan zona waktu di mana peristiwa tersebut terjadi sedang mendefinisikan ulang offsetnya (misalnya menggeser tanggal DST, atau sepenuhnya bergeser ke offset yang berbeda), waktu acara mungkin berbeda dari waktu jam dinding sebenarnya di lokasi tersebut. Jika Anda menyimpan
2013-12-29 12:34:56 UTC
untuk acara pada 13:34:56 di Berlin, Jerman, dan Berlin mengubah DST mereka,2013-12-29 12:34:56 UTC
sekarang mungkin sesuai dengan 14:34:56 waktu setempat Berlin, sedangkan acara tersebut sebenarnya masih berlangsung pada 13:34 waktu setempat.Putuskan seberapa besar kemungkinannya dan seberapa buruk kegagalannya.
-
Jika Anda menyimpan stempel waktu UTC dan menautkannya ke lokasi fisik yang kemudian Anda tautkan ke zona waktu, Anda dapat mengatasi kedua masalah tersebut. Tetapi untuk ini Anda harus menyimpan lokasi fisik yang tepat, bukan hanya "New York", jika tidak, Anda hanya memiliki case 1. dengan satu langkah perantara lagi. Jika Anda menyimpan lokasi fisik yang tepat dan memiliki cara yang tepat untuk menyelesaikan lokasi ini ke zona waktu dan Anda selalu memperbarui basis data zona waktu, Anda dapat menangani hampir semua skenario perubahan.
Putuskan seberapa praktis ini dan seberapa berharga presisi ekstra ini bagi Anda.