Google的云计算 分布式锁服务Chubby
Chubby是什么? 主要用于解决分布式一致性问题 粗粒度的分布式锁服务 在一个分布式系统中,有一组的Process,它们需要确定 一个Value。于是每个Process都提出了一个Value,一致 性就是指只有其中的一个Value能够被选中作为最后确定 的值,并且当这个值被选出来以后,所有的Process都需 要被通知到 粗粒度的分布式锁服务 Chubby是Google为解决分布式一致性问题而设计的提供 粗粒度锁服务的文件系统 其他分布式系统可以使用它对共享资源的访问进行同步
Chubby的设计目标 需要实现的特性 不作考虑的特性 高可用性 高可靠性 支持粗粒度的建议性锁服务 支持小规模文件直接存储 高性能 存储能力
Chubby的系统架构
文件系统中文件的权限 文件系统中文件操作的权限有哪些? 这些权限之间的互斥关系是怎样的?
Chubby文件系统 Chubby系统本质上就是一个分布式的、存储大量 小文件的文件系统 Chubby中的锁就是文件 在GFS的例子中,创建文件就是进行“加锁”操作,创建 文件成功的那个server其实就是抢占到了“锁” 用户通过打开、关闭和存取文件,获取共享锁或者独占锁; 并且通过通信机制,向用户发送更新信息
Client与Chubby的通信协议
Chubby的应用 主节点选举 独占锁 共享锁 数据存取应用 获取GFS ChunkServer信息 元数据存储 ……