首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我的服务器具有正确的特定于区域设置的时区设置是否重要?

我的服务器具有正确的特定于区域设置的时区设置是否重要?
EN

Stack Overflow用户
提问于 2015-06-25 00:06:27
回答 1查看 306关注 0票数 0

因此,我的朋友说,当他配置服务器时,他总是将它们的时区设置为UTC。他说,这有助于确保他在使用多台服务器时不会遇到时区问题。他的代码自然地从他的服务器设置中获取日期时间。

我的问题是:如果我有一台位于加利福尼亚州(美国东部时间)的机器,并且我设置它的时区是UTC,那么该服务器中的实际时间不是正确的吗?

我的朋友说:如果服务器在当地时间早上7:00收到订单,即美国东部时间上午7:00-由于服务器被配置为UTC (比EST早4小时),那么订单将被保存为在UTC上午11点下的订单,这意味着它可以根据需要转换为任何时区。(将11 AM UTC转换为EST得到7 AM EST,这是正确的)

我一直坚持认为服务器应该配置为正确的时区。我想我错了。可以像这样设置服务器吗?如果服务器计时不是特定于区域设置的,会有什么缺点吗?

EN

回答 1

Stack Overflow用户

发布于 2015-06-25 01:32:15

我的印象是奇怪的唯一来源是机器不是在物理上位于一个遵守其时间设置的时区的地方。但这只是“奇怪”,不应该有任何缺点(只要时间设置准确)。

让我们考虑一下date对象,比如Java语言中的DateCalendar。他们的实现实际上将时间存储为Unix时间戳(一个长数字)- Unix时间戳基本上是相对于UTC纪元(自1970-01-01 00:00:00 UTC以来经过的(毫秒)秒)。只要在客户端、服务器和数据库之间正确地存储/转换时区(反之亦然),一切都应该没问题。如何将时间存储在架构的不同位置是一个约定问题。

事实上,如果您选择UTC作为您在服务器端(在机器上和代码中)处理的唯一时区(例如,调试过程、日志调查等),这可能会有所帮助。例如,日志时间戳将与您的业务逻辑或db层记录的时间相当。

另请参阅this question

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31031558

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档