【每周论文】Time, Clocks, and Ordering of Events in a Distributed System

本文是Leslie Lamport的经典论文,探讨分布式系统中事件的偏序关系、逻辑时钟和全序,以及资源互斥的条件。通过逻辑时钟条件C1和C2,以及IR1和IR2规则,建立了事件的全序,解决了时钟同步问题。文中还提出了资源互斥的三个条件,确保资源请求的正确顺序和释放。

这篇文章是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之前,并且p1和q2存在一个偏序关系(happened before);对于p3和q3,我们则无法判断它们是谁先发生、谁后发生的,我们称其为并发的。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值