查看事件日志,发现是由Kernel-General进行修改的,具体日志如下:
时间同步,有什么问题么?
这同步时间有点太频繁了吧,我没更新补丁之前,是没有这种同步的,更新后就发现了这个,而且每次同步时间,时间都会想错30s左右,且日志里的时间并非是北京时间
@lanrain:
去这里看看:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
然后看一下你的时间是不是从time.windows.com同步的,每次都差了几十秒,不是时间服务器出问题了,就是你的主机出问题了
@czd890: 谢谢你的回复,我查看了下这个值,确实是从这个域名同步的,我这个用的是阿里云的服务器,这应该怎么排查是本机的问题啊
@lanrain:
上图注册表那个key,是同步时间的间隔时间,你看一下是不是10006060*2(2小时).
阿里云的服务器,你提个工单问他们,它们服务器有不少时钟变慢的情况...
@lanrain:
https://help.aliyun.com/knowledge_detail/38287.html?spm=5176.11065259.1996646101.searchclickresult.8cb62116gIppfR&aly_as=ZsVQ-oXp
@czd890: 昨天提交了工单,晚上给换了一个同步时间的服务器,但是还是没解决啊,是否有方法可以停止这个Kernel-General去更新时间啊?谢谢了
@lanrain:
windows service里面的Windows Time服务禁用就可以了。
因为虚拟机没有晶振,所有才会时间不同步,但是也不会2个小时差几十秒这么严重。工单继续反馈,实在不行换个ecs实例试试看。
禁用时间同步后,要注意你的业务是不是有用到datetime.now(),可能会导致你的业务出现问题。谨慎!
另外,这个日志不影响你啥把,如果是时间不同步影响了你业务,可以考虑去HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient 把同步间隔时间缩短来解决一部分问题。
@czd890: 我看NtpClient里设置的时间间隔是7天同步一次,并没有这么频繁,所以这个同步时间,我感觉不想是w32Time去控制的,我的服务里用到雪花算法生成id,如果再生成的时候,发生了时间同步,就会导致算法出错。所以很愁人啊
@lanrain: 服务器的时间快了?发生了回退?
你用的算法是那个? 我记得实现处理了时间回退的问题。
如果同步间隔不是由SpecialPollInterval配置触发的,检查一下看看是不是有计划任务