Каков наилучший способ хранения DateTime?

Рассмотрим приложение, подобное Uber. Он работает в нескольких городах в нескольких часовых поясах. Иногда пользователь может заказать такси для друга в другом часовом поясе. Серверы БД снова распределены в нескольких местах. Между ними может быть несколько API, которые также имеют свои собственные серверы со своими часовыми поясами.

Является ли принудительное использование UTC в каждом программном компоненте единственным надежным решением? Что, если версия, использующая местное время, попала в производство по ошибке?

Я заинтересован в знании лучших практик, когда дело доходит до хранения значений даты и времени.

1 ответ

На самом деле выбора нет. Вы должны ввести какое-то "базовое время", обычно UTC (но зависит от конкретных потребностей) вместе с должным образом проверенной, но надежной "относительной системой" (которая может быть такой же простой, как указание +/- относительно времени UTC), Такое решение действительно удовлетворило бы все потребности, о которых вы упомянули, и оказалось "наилучшей практикой" для таких приложений, как системы торговли на торговых счетах, где дата и время являются одним из наиболее ценных факторов.

Другие вопросы по тегам