我们需要通过休息在长轮询中从各种类型的数据库中发送一些对象。发送数据,每条记录包含时间戳。当客户端从服务器接收新数据时,他应创建另一个轮询请求,其中记录的时间戳作为参数,这有助于指定以下数据记录。
我考虑了epoch unix时间并将此值存储在数据库中的每条记录中进行过滤,并且此值将随每个轮询请求一起发送。
您对此解决方案有何看法?这种用法是否正常或我应该担心什么?感谢。
编辑:
我忘记了这些数据将由不同时区的客户添加。这也是我考虑使用unix时间的另一个原因。
答案 0 :(得分:1)
任何存储时间戳的格式都可以,只要用户能够明确地解释它。 API中的时间戳格式没有理由与数据库中的相同。 API的想法是将模型与数据库分离。
我个人会从 ISO 8601基本和扩展记号中选择一种格式。示例: 2008-09-15T15:53:00 。在几乎所有编程语言中都有处理这种格式的方法(强制转换为unix时间戳或内部日期/时间类)。对于java,您可以使用java.time.LocalDateTime#parse
Unix时间戳存在一些问题(它们可能存在与否可能是您的问题)