messaging - Lamport 的(物理)时钟同步算法

标签 messaging distributed clock timing distributed-system

由于这是一篇著名的计算机科学论文,我决定阅读 Lamport 的 Time, Clocks, and the Ordering of Events in a Distributed System .除了他经常引用的关于逻辑时钟的评论外,他还提出了一种用于同步物理时钟的算法(从第 562 页开始)。我想我明白了那个算法的想法,但是,在第 563 页,他列出了每个进程必须遵循的两个实现规则。我似乎无法弄清楚 IR1 应该是什么意思:

IR 1'. For each i, if Pi does not receive a message at physical time t, then Ci is differentiable at t and dCi(t)/dt > 0.

他所说的“Ci 是可微分的”是什么意思?区别于什么?为什么 dCi(t)/dt 必须大于 0?毕竟,我们难道不想让它尽可能接近 0 吗?

也许这是一个非常愚蠢的问题,但答案却非常明显,但到目前为止我还想不通。因此,非常感谢您的帮助...

最佳答案

这就是说,Ci(t)t 的数学可微函数;即 Ci(t) 的导数存在于 t。 (也就是 Ci(t) 的值在 t 发生了一些可测量的变化)

dCi(t)/dt > 0 仅表示 Ci(t) 的导数大于零。 (又名 Ci(t) 变化的速率在 t 时为正)

这只是将 Ci(t) 定义为一个函数,只要 Pi 没有收到消息,它的值就会增加。

关于messaging - Lamport 的(物理)时钟同步算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31059206/

相关文章:

c++ - C `clock()` 函数只返回一个零

Erlang:如何在消息系统中跟踪发件人?

mysql - 数百万人的高效私有(private)消息传递解决方案?

.net - NServiceBus:找不到(消息)的元数据

asynchronous - jedis是同步的还是异步的? redis提供什么一致性保证?

javascript - PHP 时间转 Javascript 时钟

Oracle 高级排队体验

cocoa - 需要帮助在 cocoa 中实现进程间通信

multithreading - 什么是事件驱动编程?

Javascript HTML 多时区时钟