我正在为我们拥有的软件创建一个提醒系统。目前,我让用户给我他们想要提醒的时间,并将其存储在数据库中。
然后,我有一项服务定期检查数据库的提醒时间。如果提醒时间与服务器时间匹配,系统会向用户发送电子邮件。
我刚才意识到由于时区差异,这可能不起作用。
我的问题是,处理服务器和客户端时差的最佳方法是什么,以便提醒准确?
例如.....我们的服务器设置为中央时间,比如说下午6点......位于东海岸的用户想要在晚上7点提醒...这意味着我的服务器需要在服务器时间下午6点发送提醒。
我希望问题很明确。
答案 0 :(得分:6)
我建议在内部处理UTC中的所有内容,并让客户端软件执行区域特定的转换。然后,您可以支持任意时区,如果您必须将服务器移动到其他地方,或者您的服务变得非常受欢迎,那么您仍然可以使用。
答案 1 :(得分:2)
将所有内容存储在universal time中,并根据该转化更新您的客户。
所以简单地说,让他们首先计算EST和UTC之间的转换,而不是让您的客户向您发送美国东部时间6:00的请求,而是向您发送UTC。