在分布式环境下,有时有必要在客户端显示服务器时间,但是由于服务器处理请求和网络传输需要时间,因此当时间传到客户端时已经有了一定的时延,通常是两到三秒,如果网络不好,需要的时间会更长.
前端时间无意中看了NTP(Network Time Protocal)后,顿时豁然开朗.
t 为服务器和客户端之间的时间偏差;d 为两者之间的往返时间,这样就有以下等式:
T2=T1+t+d/2; T2-T1=t+d/2; T4=T3-t+d/2; T3-T4=t-d/2;
联立求解即得:
d=(T4-T1)-(T3-T2);
t=((T2-T1)+(T3-T4))/2