Ntp服务的使用
十一月 29, 2023
什么是NTP服务
使用之前我们先了解一下。
NTP服务器【[Network Time Protocol](https://baike.baidu.com/item/Network Time Protocol/2985649?fromModule=lemma_inlink)(NTP)】是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等),做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。时间按NTP服务器的等级传播。按照离外部UTC源的远近把所有服务器归入不同的Stratum(层)中。
——百度百科
上文说的很复杂,但简单来说就是获取时间的一种方式。
在需要时间数据时,我们有系统时间和外部时间两种方式来获取。但是呢,使用时可能遇到一些情况。例如系统时间设置的不正确,从而会导致出现误差。虽然说一般系统时间也是根据NTP服务器来获取的,但我们无法保证系统的NTP服务器是否正常工作,所以我们可以考虑直接使用NTP服务器来获取正确的时间。
这也是我自己的想法,国家授时中心,以及腾讯云、阿里云,这类一线大厂,它们提供的NTP服务具有稳定性。经过本人验证,企业的NTP服务是比授时中心快一些的。话不多说,直接上手吧。
使用NTP
以下的代码就是我本人使用NTP服务器的例子,根据我的需求我只需要年月日这个时间。
图片(暂时没有稳定图床)
1 | def NtpTime(): |
使用NTP的缺点
毕竟我们通过访问NTP得到时间这一过程也需要耗时的,所以我们无法得到一个更精准的时间。
除非我们能估算代码的运行速度,提前加上,才能确保时间足够精准。
查看评论