Ben GMT (UTC) ile doğru yolda olduğunu düşünüyorum. Eğer spesifik bir gerçekleşir (veya oluştu) bazı olay var her kanonik damgası temsili olarak UTC kullanın point-in-time. UTC DST kurallar tarafından etkilenmez, bu yüzden büyük, belirgin nokta-in-time olarak temsil eder.
Eğer etkinlik tarih / zaman net temsili için bir strateji var sonra, o zaman oldukça kolayca kullanıcılar (veya kabul etmek en mantıklı ne zaman dilimine dayalı localizing tarih / kere sorunu çözebilir ) onlara gösterilecek. O daha alakalı olup olmadığını UTC gerçek olay tarih / saati depolamak çünkü muhtemelen, bilmek ve de olayın saat dilimini saklamak gerekir, ancak, oldukça kolay kullanıcı zaman dilimi için yerelleştirebilirsiniz kendilerine herhangi bir kullanım durumunda.
Bu yerelleştirme genellikle bir zaman dilimi kütüphane ile yapılan ya da sizin SDK tarafından sağlanan (örneğin Java java.util.Calendar vardır) veya bir üçüncü taraf uzantısı olarak (örneğin Python pytz vardır). PHP bir eşdeğeri vardır eminim, ama ben onun kitaplıkları ile aşina değilim.
Bu kütüphaneler genellikle Olson Zoneinfo DB gibi bir kurallar veritabanı üstüne inşa edilmiştir. Bu kurallar oldukça sık değiştirebilirsiniz, böylece siz gerçek bir global uygulama geliştirme, özellikle, temel veritabanı güncellemeleri üstünde kalmak zorunda. Ancak, bir de zaman DST kurallarını değiştiren çalışma ortamında önemli bir yükseltme gerçekleştirmek veya önemli bir kod yapmak zorunda kalmadan (teoride) kurallar veritabanını güncellemek böylece ezoterik, belirsiz bir zaman dilimi kuralları dışa iyi bir iş yapmak Özellikle alan değişikliği.
Bu dünyanın en kolay sorun değil ve biz bunu yapmak zorunda olduğunu kokuyor, ama bunu bir kaç kez yaptım ve sonra, lokalizasyon endişe vs tam nokta-in-time temsil depolama arasındaki endişeleri ayrılmasını grok ettik bir kere ikinci doğa haline gelir.