bmpi-dev / bmpi.dev

blog for bmpi.dev

Home Page:https://www.bmpi.dev

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

分布式系统中的时间 · 构建我的被动收入

utterances-bot opened this issue · comments

分布式系统中的时间 · 构建我的被动收入

本文梳理在分布式系统中时间对事件序列的影响,介绍逻辑时钟、向量时钟及混合逻辑时钟等不同算法的解决思路。

https://www.bmpi.dev/dev/time-in-distributed-system/

lamport timestamp 第二步不是很理解,「P2 先接收到了此事件,本地更新逻辑时间戳,这个事件在 P2 中为m1@(2,P2)。」,为啥p2的time一定是2

lamport timestamp 第二步不是很理解,「P2 先接收到了此事件,本地更新逻辑时间戳,这个事件在 P2 中为m1@(2,P2)。」,为啥p2的time一定是2

因为P2中并没有m1的版本,当它接受到P1发送的m1后会自动加1,这样时间戳就变成2了。你看算法中就是选择本地或接受事件中更大的值,在这个例子就是1,然后再给它自增1,变成2了。

@madawei2699 明白了,一开始我理解成 m1 、m2 、... 、mn 共享一个 P2_local_time 了

@madawei2699 明白了,一开始我理解成 m1 、m2 、... 、mn 共享一个 P2_local_time 了

可以把本地时间戳理解为数据的版本号,每个数据(变量)都有自己的版本号