这篇文章是Leslie Lamport于1978年发表的,并在2007年被选入SOSP的名人堂,被誉为第一篇真正的“分布式系统”论文,该论文曾一度成为计算机科学史上被引用最多的文章。文章的作者Lamport享有分布式计算原理之父的美誉,并且因其对分布式系统研究作出的卓越贡献,2013年他被授予了图灵奖。
在分布式系统中的时钟同步是一个非常难的问题,因为在分布式系统中,是使用消息进行通信的,若使用物理时钟来进行同步,一方面是不同的process的时钟有差异,另一方面是时间的计算也有一定的误差,这样若有两个时间相同的事件,则无法区分它们谁前谁后了。这篇文章主要解决分布式系统中的时钟同步问题。
在文末的总结中,作者写了这么一句话“In a distributed system, it is important to realize that the order in which events occure is only a partial ordering”(在分布式系统中,事件发生的顺序只能是偏序),那什么是偏序呢?
以下图为例,有三个进程(P、Q、R),每个进程拥有一系列的事件(如进程P拥有事件p1、p2、p3、p4)。对于在同一个进程中,为每个事件区分前后是很简单的,比如下图时间从下往上是增大的,则最先发生的是p1,最晚发生的是p2;对于在不同的进程之间,假设事件p1代表了P向Q发送了一个消息,事件q2代表Q接收到这个消息,我们则称p1发生在q2之前,并且p