4.4 逻辑时钟

一致性

1. 知识点论述
「4.4 逻辑时钟」是《分布式计算系统》一致性部分的核心知识点。解释多副本如何读、如何冲突判定,以及强弱一致如何取舍。本知识点首先把握:Lamport 时钟:收到消息后把自己的时钟拨到不小于对方,再加一。C(a) < C(b) 不能证明 a 在真实时间上先发生。学习时请把它放回整门课主线——把独立计算机组织成对用户像一台机器的系统,并用通信、数据放置、复制、容错与调度把这件事做可靠。
2. 视频教程

偏序关系与 Lamport 时钟

3. 知识点详解

下面围绕本知识点展开要点说明,建议结合上方视频边看边对照。

  1. Lamport 时钟:收到消息后把自己的时钟拨到不小于对方,再加一。C(a) < C(b) 不能证明 a 在真实时间上先发生。
  2. 向量时钟:每个进程一个分量。可以判断先后,也可以判断两个事件并发。
  3. 冲突检测:同一数据的两个更新,若向量不可比,就是并发冲突,需要合并规则。
学习建议:先抓住定义与问题,再理解机制步骤,最后对照应用场景思考“何时用、何时不用、代价是什么”。
4. 应用场景
  • 版本向量检测并发写冲突。
  • 因果消息定序、协作编辑的冲突合并。
  • 分布式追踪中理解“逻辑先后”不等于墙钟先后。