前前后后把这篇论文通读了两三遍,但作为一只刚踏入分布式领域的菜鸟,在感叹Google大牛们的奇思妙想之外,更多的是思考能从这篇大作中汲取出一些对自身思维和眼界有启迪的东西。资历尚浅,谨以小结笔记的方式记录下所读所想。
我主要是结合此处的中文版去理解原文,地址:http://duanple.blog.163.com/blog/static/70971767201142412058672/。
概述来说,Chubby提供了一种锁服务(lock service),是粗粒度的(coarse-grained),可理解为锁的持有时间相对长(譬如通过它进行主节点选取,选取后的主节点在一定长的时间内能够通过Chubby保持自己主节点的身份),同时也是适用于松耦合的分布式系统(即由通过高速网络连接的众多单机构成的系统)。它的功能主要是为客户端应用程序提供同步行为或在某些基本问题上达成一致的接口。
因此,在功能上有些类似于一个保证一致性的客户端库,但Chubby的好处是:第一,它是独立与客户端运行的,对于客户端应用程序的变化能够很好的适应;第二,可以提供存储少量文件信息的功能;第三,类似于锁的接口更容易被编程人员使用;第四,能够保证即使只有一个客户端正常运行,依旧能够提供良好的一致性服务。第四点主要是针对Paxos客户端库本身需要大多数客户端的参与才能保证一致性的进行。
<未完待续......>