租约:为什么权利必须续期才继续有效?

租约:为什么权利必须续期才继续有效?

租约是一种带到期时间的权利:系统允许某个主体暂时持有资源或身份,但只有在期限内续期,权利才继续有效。

例如,分布式系统选出一台服务器负责某项任务,却不能假定它会永远在线。服务器定期续租;若网络中断,协调系统在租约到期后可把任务交给别处。到期并不证明原服务器已经损坏,只说明它不再拥有可被共同承认的控制权。

租约不同于永久授权,也不同于心跳。心跳提供“最近还活着”的信号;租约则规定超过哪一时刻,旧权利必须停止生效。它也不能单独消除时钟误差或延迟造成的冲突,实际系统仍需版本号、隔离令牌等约束。

租约的重要性在于,它把无法确定的失联转化为有限等待。代价是期限的选择:太短会因暂时延迟频繁失效,太长又让资源被失联主体占据更久。

https://etcd.io/docs/v3.4/learning/api/


了解 Geoffrey Chen 的更多信息

订阅后即可通过电子邮件收到最新文章。