前几年有个朋友跟我抱怨,他们公司两台交易服务器时间差了将近两秒,结果一笔订单的成交记录怎么都对不上,财务和运维来回扯皮了一整个下午。后来查来查去,问题就出在设备各自走各自的时间上。要解决这种事,靠人工定期去对表根本不现实,这时候就得靠一台GPS同步时钟服务器来给整个网络当“公共挂钟"。这类设备[产品非民用],外形跟普通服务器差不多,放在机柜里,接上天线后就能从卫星信号里拿到标准时间,再通过网络分发给所有接入的设备。
我见过不少单位的机房,设备时间五花八门——有的快半分钟,有的慢十几秒,有的干脆是几年前的时间。平时各跑各的业务好像没什么感觉,一旦出了问题,运维人员把防火墙、交换机、应用服务器几边的日志调出来一对比,发现时间戳对不上。哪条日志在前哪条在后根本理不清,本来十分钟能解决的问题,硬是折腾到半夜。
GPS同步时钟服务器做的事情其实很单一,就是把全网设备的时间拉到同一根线上来。它自己通过天线接收GPS卫星的时间信号,内部有个时钟模块持续运行,然后把标准时间通过NTP协议周期性地发给网络里的设备。设备收到后自动校正自己的时钟,校正完之后,再往下层的设备继续同步。一层一层传下去,整个网络里的时间就能保持一致。
这种设备在行业里有不少实际用途。比如变电站里的故障录波器,需要精确记录某个时刻的电压电流变化,如果各站时间不一致,故障点就定不准。再比如安防系统里的摄像头,回放录像时如果时间不准,找一段画面得从头翻到尾,效率很低。还有医院的叫号系统、学校的打铃系统,时间统一了才不会出乱子。
从安装角度来看,这种设备的门槛并不高。天线需要固定在室外楼顶或者阳台,能看见天空就行,用馈线连到机房内的主机上。主机插上网线,配置好IP地址和子网掩码,然后设置一下NTP服务的参数,剩下的工作设备自己就能完成。日常维护只需要定期登录管理界面看一眼卫星接收颗数和同步状态,信号正常的话基本不用操心。遇到雷雨天气信号短暂丢失时,设备内部的高稳晶振还能继续守时,等天气好转后自动恢复同步。
很多人觉得时间同步是个小事情,但真正经历过日志对不上、审计过不去、故障追不到的人,才知道它有多折腾人。GPS同步时钟服务器就像机房里的水表电表一样,平时没人注意它,但整个网络的正常运行,恰恰离不开这一点一滴的“准时"。

