Не хочется тратить много времени на эту тему, но она обросла какими-то причудливыми фантазиями в кругах технических специалистов, связанных с Windows (надо почаще менять часовые пояса – это способствует профессиональному росту системных администраторов!), так что приходится выметать сор.
- Первый факт, что все системы используют внутри себя время UTC. Два контроллера домена, находящиеся в разных часовых поясах, никогда бы не смогли работать совместно. Пользователь никогда бы не смог залогиниться на компьютере, который расположен в другом часовом поясе, чем домен-контроллер. Но это работает и работает потому, что внутри систем время единое, и это UTC.
- Факт второй. Синхронизация времени никак не связана с часовыми поясами. Она выполняется по протоколу NTP, и опять же это время UTC. То же верно относительно GPS и ГЛОНАСС (было бы забавно запускать для каждого часового пояса свою группировку спутников!). Если на каком-то компьютере сменили часовой пояс, то он, как и раньше, будет получать точное время с домен-контроллера (или спутника) и при этом не будет никаких «скачков» времени, т.к. время поступает в UTC, а смена часового пояса не изменяет время. Вот если вы измените не часовой пояс, а само время в ОС, то оно «вернется» обратно при синхронизации.
- Факт третий. Существует огромное количество программного обеспечения, которое неправильно работает с «локальным» временем. Даже профессиональные программисты зачастую не задумываются, как правильно работать со временем в их программах. О проблеме 2000-го года слышали все. Сейчас очередной всплеск проблем из-за неправильной обработки времени в программах. Суть проблемы в том, что программа может работать целиком со временем UTC и не знать проблем, но практически всегда нужно отображать время человеку и делать это в локальном времени, и это тоже не проблема, проблема появляется, когда нужно привязаться к событиям в локальном времени (начало рабочего дня, вылет самолёта) и сопоставить эти события с прошлыми периодами. В результате в отчётах могут появится пассажиры, которые слезли с самолёта и уехали на автобусе до того, как прилетел самолёт; товар был продан в магазине до того, как его туда привезли и т.п. Что с этим можно сделать? Да ничего! Только запретить депутатам игры со временем навечно.
- Факт четвертый. Единственный способ надежно проверить влияние «перевода времени» это собрать полнофункциональный стенд и провести тестирование все критических моментов.
- Факт пятый. К счастью в большинстве случаев «перекосы» с локальным временем в программном обеспечении не заметны и ни на что не влияют.
Добавить комментарий