我有一个运行在黑盒Web服务上的简单php程序,该程序使用time()
函数。我注意到time()
函数在我的程序中并不是特别一致。我在网页上显示时间,刷新页面时会显示更新的时间。
有时,当我刷新时,时间会在50
和100
秒之间跳转,然后在下次刷新页面时,它会跳转回较低(更一致)的Unix时间戳,与显示的时间2刷新了以前的时间。
代码很简单:
<?php
echo(time());
?>
为什么time()
函数的结果有时会关闭几秒钟,然后在下一次更正?
答案 0 :(得分:3)
在多台服务器上运行时,time()
函数有时会给出不同的结果。负载平衡器可以将您定向到时间一致的服务器。如果负载均衡器然后将您定向到系统时钟已漂移的另一台服务器,则您可能会从time()
函数获得不同的结果。
其他情况下,某个时间可能不正确,而另一时间可能更正,这是系统时钟漂移了。然后,在与时间服务器重新同步的过程中,它更新了时间,导致您浪费或浪费时间。