时区同步
我有一个用Java运行的服务器和一个用Python运行的客户端。当我把客户端和服务器连接起来时,我需要把服务器的时间同步到客户端。现在我已经成功地连接并从服务器向客户端发送数据流了。我想知道通常是怎么发送时间和时区的。我现在是把时间以毫秒的形式发送过去,然后在Python里解析这些毫秒来获取日期和时间。但是我不知道怎么发送时区。
2 个回答
3
你知道NTP吗?它是网络时间协议的一种,英文叫做Network Time Protocol。
3
你应该使用协调世界时(UTC)来传输和处理时间,完全不需要去处理时区的问题。在Java中,System.currentTimeMillis()
就是返回这个时间的。
补充说明:传递时区信息的正确方式是使用一个大陆/城市的ID,比如时区数据库中的格式,例如“America/New_York”或者“Europe/Berlin”。Java也是这样做的。仅仅使用基础的时区偏移量是不够的,因为它无法处理夏令时和历史上的时区变化。