我们需要在长时间静置的情况下从各种类型的数据库中发送一些对象。发送数据,每个记录都包含时间戳。当客户端从服务器接收新数据时,他应使用记录的时间戳作为参数创建另一个民意调查请求,这有助于指定以下数据记录。
我考虑有关epoch unix时间,并将此值存储在每个记录中的数据库中以进行过滤,并且每个民意调查请求也将发送此值。
。您如何看待此解决方案?使用量是否可以,还是我应该担心某些事情?谢谢。
编辑:
我忘记了注意这些数据将由客户在不同的时区中添加。这也是我考虑使用Unix时间的另一个原因。
存储时间戳的任何格式都可以,只要用户能够明确解释它即可。API中没有理由与数据库中的时间戳格式相同。API的想法是将模型从数据库中解除。
我个人会从 ISO 8601基本和扩展符号中选择一种格式。示例: 2008-09-15T15:53:00 。在几乎所有编程语言中,都有处理此格式的方法(施放到UNIX TIMESTAMP或内部日期/时间类(。对于Java,您将使用java.time.LocalDateTime#parse
UNIX TIMESTAMP有一些问题(它们可能是您的问题(
- 无法在1970年1月1日之前代表日期
- 在2038年1月19日之后无法代表日期
- 不是人类可读
- 不包含时区(Timestamp本身没有时区的概念,但是发送客户端时区与时间戳一起发送可能很有用。服务器可能始终将值正常化为UTC(