跳至主要內容
服务器时间回拨导致的 BUG:修复与预防全攻略

服务器时间回拨导致的 BUG:修复与预防全攻略

"你的服务器跑得太快了,NTP 一声令下把时钟回调 5 秒——这 5 秒的时光倒流,对人类无感,对程序是毁灭性的。"

一、什么是时钟回拨?

时钟回拨(Clock Rollback / Clock Drift),指的是服务器的系统时间出现向后跳转的现象——当前获取到的系统时间,比之前记录的时间更早。

举个最直观的例子:

  • 节点上一次生成 ID 的时间戳是 1712123456789 毫秒
  • 由于系统时间调整,当前获取到的时间变成了 1712123456788 毫秒
  • 时间往回走了 1 毫秒——这就是一次典型的时钟回拨

郑天祺大约 10 分钟运维运维时间同步服务器