聊一聊分布式系统中的时间

聊一聊分布式系统中的时间

💡 原文中文,约3400字,阅读约需9分钟。
📝

内容提要

在分布式系统中,时间处理复杂。物理时钟因网络延迟和同步误差不可靠,逻辑时钟如Lamport时钟可解决此问题。超时处理需在失败检测延迟和过早超时间权衡,分布式事务中常用重试解决。节点超时可能导致脑裂,可用token fence方法。计算机有time-of-day和monotonic两种时钟,后者用于计算时间间隔。Google的TrueTime API通过GPS和原子钟提高时钟可靠性。

🎯

关键要点

  • 在分布式系统中,物理时钟因网络延迟和同步误差不可靠。
  • Lamport逻辑时钟和向量时钟可解决物理时钟不可靠的问题。
  • 超时是分布式系统中最难处理的结果,需在失败检测延迟和过早超时间权衡。
  • 超时处理通常采用放弃或重试的方式,重试需保证幂等性。
  • 节点超时可能导致脑裂,需使用token fence方法来解决一致性问题。
  • 计算机有time-of-day时钟和monotonic时钟,后者用于计算时间间隔。
  • Google的TrueTime API通过GPS和原子钟提高时钟可靠性,提供严格递增的时间特性。
➡️

继续阅读