当前时间 timeNow() 返回的是当地时区的时间:
CST可以代表如下四个不同的时区:
timeNow() 返回的 +0800 CST 表示的就是中国标准时间,与UTC时间有如下的转化:
Wall Clocks表示挂钟时间,存储的是自1970 年 1 月 1 日 0 时 0 分 0 秒以来的时间戳,当系统和授时服务器进行校准时间时间 *** 作时,有可能造成这一秒是2018-1-1 00:00:00,而下一秒变成了2017-12-31 23:59:59的情况。
Monotonic Clocks,意思是单调时间的,所谓单调,就是只会不停的往前增长,不受校时 *** 作的影响,这个时间是自进程启动以来的秒数。
timeNow() 返回的 m=+0004002201 就是表示Monotonic Clocks
go语言中如果不设置指定的时区,通过 timeNow() 获取到的就是本地时区
设置时区有两种方式:
固定时区到东八区。但这种不是对程序的全局设置,每次获取时都需要固定时区
加载指定时区。但如果没有go环境使用这种方式就会加载失败,因为时区信息是放在go的安装包中的。
如果你用第二种方式加载时区,在打docker镜像时就需要进行时区相关的配置,配置文件如下:
参考文章:
>SNTP:简单网络时间协议(Simple Network Time Protocol)
SNTPV4 由 NTP 改编而来,主要用来同步因特网中的计算机时钟。 SNTP 适用于无需完全使用 NTP 功能的情况。比较以前的 NTP 和 SNTP 版本, SNTPV4 的引入没有改变 NTP 规范和原有实现过程,它是对 NTP 的进一步改进,支持以一种简单、无状态远程过程调用模式执行精确而可靠的 *** 作,这类似于 UDP / TIME 协议。
强烈建议 SNTP 仅用于同步子网的末端情况。 SNTP 客户机 *** 作于子网末端,一个 SNTP 客户机不应靠另一个 SNTP 客户机来同步。 SNTP 服务器位于子网根部(即第 1 层),且不应有其它时间同步源,除了有用的可靠无线电波(RADIO)及调制解调器时间服务器外。一般通过冗余时间同步源、不同子网路径及完整的 NTP 运行算法等共同作用,可实现基本服务器的完全可靠度。如果所有的时间同步源失效或大部分时间不准确,主同步时间源就会切换到使用无线电波或调制解调器,所以,在主服务器上使用 SNTP 而不是 NTP 时要多加注意。
与 NTP 及 SNTP 相比, SNTPV4 中唯一改进了协议头使其适用于 IPV6 和 OSI 寻址。此外 SNTPV4 包括了对基本 V3 模式的可选项扩展,包括任意播模式(anycast)和认证方式(用于组播和任意播模式)。
协议结构
SNTP 信息具有与 NTP 相同的格式:
2 5 8 16 24 32bit
LI VN Mode Stratum Poll Precision
Root Delay
Root Dispersion
Reference Identifier
Reference timestamp (64)
Originate Timestamp (64)
Receive Timestamp (64)
Transmit Timestamp (64)
Key Identifier (optional) (32)
Message digest (optional) (128)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)