知识卡片
etcd锁强一致
内容
etcd 基于 Raft 保持强一致,适合做需要可靠时序和独占的锁服务。代价是吞吐和延迟通常不如轻量方案;强一致不是免费午餐,必须用压力测试确认容量。
参考来源
- 位置:《Go语言高级开发与实战》第5章《分布式系统》(源文件:_epub-src/GoYu Yan Gao Ji Kai Fa Yu Shi Zhan_split_046.html)
- 结论依据:原文说明 etcd 用 Raft 保持全局一致,适合分布式锁,又提示可靠方案往往低吞吐高延迟,因此支撑该取舍。
- 原始内容:式锁 1 etcd分布式锁实现原理简介 etcd是使用Go语言开发的一个开源的、高可用的分布式key-value存储系统,可以用于配置共享和服务的注册和发现。etcd使用Raft 算法保持了数据的强一致性,每次操作存储到集群中的值必然是全局一致的,所以很容易实现分布式锁。锁服务有“保持独占”“控制时序”两种使用方式。 “保持独占”即所有获取锁的用户最终只有一个可以得到。etcd为此提供了一套实现分布式锁原子操作CAS(Compare A…