为不同时区的客户提供服务

时间:2017-10-03 15:33:31

标签: sql-server

我正在尝试设计一个应用程序,允许支持人员在将来的某个时间窗口之间在所有用户计算机上显示系统托盘警报。 因此,我们让多个时区的客户端检入中央服务器,查找要显示的任何新警报。 中央数据库有一个表,用于存储警报详细信息及其开始/结束时间,以及一个通过选中此表来响应客户端的Web服务。

挑战在于客户端以及服务器上的未来触发时间可以在任何用户指定的时区。 根据我在这里阅读的几个主题,最佳做法是将UTC中的开始/结束时间存储在数据库中,并在请求进入时将其转换为客户端的时区。 这意味着每隔几分钟就将所有开始/结束时间转换为客户端的时区。我担心这将是中央服务器上的主要性能问题。处理夏令时也是另一个需要考虑的问题。

有更智能的方法来处理这个问题吗?处理这种情况的任何最佳实践都会有所帮助。

1 个答案:

答案 0 :(得分:0)

假设您使用的是SQL,那么您希望使用DateTimeOffset作为数据类型。这种类型能够存储&操纵时区和DST信息。

请在此主题中查看已接受的答案,以获取此类问题的规范答案:DateTime vs DateTimeOffset

相关问题