4

我正在为我们拥有的软件创建一个提醒系统。目前,我让用户给我他们想要提醒的时间,并将其存储在数据库中。

后来,我有一项服务会定期检查数据库的提醒时间。如果提醒时间与服务器时间一致,则系统向用户发送电子邮件。

我刚刚意识到,由于时区差异,这可能行不通。

我的问题,处理服务器和客户端的时间差异的最佳方法是什么,以便提醒准确?

例如......我们的服务器设置为中央时间下午 6:00......东海岸的用户希望在晚上 7:00 收到提醒......这意味着我的服务器需要在服务器时间下午 6:00 发送提醒。

我希望这个问题很清楚。

4

2 回答 2

6

我建议在内部使用 UTC 处理所有内容,并让客户端软件进行区域特定的翻译。然后您可以支持任意时区,如果您不得不将服务器移动到其他地方,或者您的服务变得足够流行以成为多宿主,您仍然可以。

于 2011-10-11T19:34:46.620 回答
2

以通用时间存储所有内容并根据该转换更新您的客户。

所以简单地说,不要让您的客户向您发送 6:00 EST 的请求,而是让他们先计算 EST 和 UTC 之间的转换,然后将 UTC 发送给您。

于 2011-10-11T19:34:33.560 回答