本文是MIT6.824 对于线性一致讨论的内容记录,翻译内容来自于文末的参考资料,文中也夹杂了自己里理解描述。此时我还没有做Lab3,对课程中所说的重复请求处理还并不理解,希望做完Lab3后能理解这个问题。
在学习完zookeeper后,又遇到了一种有趣的复制算法—CRAQ,这篇论文有两个较为有意思的东西,一是通过复制实现了容错,二是通过链复制(Chain-Replication)实现了与Raft不同的复制方式。在实际的生产系统中链复制也有比较多的应用,例如在HDFS中就使用链复制来完成块数据的复制。此外CRAQ还能利用所有节点处理读请求提升系统的吞吐性能并且还能保证线性一致,确认让人着迷。
zookeeper是一个在实际生产环境相当成功的系统,集成到了各种服务中,例如dubbo在使用zookeeper做服务发现,有的系统将zookeeper作为配置中心等等。zookeeper所以一定存在些值得我们学习的东西。以下便是我们能初步从zookeeper中获得的一些思考: 1. 相对于Raft,Raft仅仅是一个库,需要自己写应用程序与Raft库进行交互。是否有一些独立、通用的系统来快速帮