自序

2016年9月底,于北京

最早接触ZooKeeper是因为工作上使用了Kafka集群,看了一些ZooKeeper的资料。那时对ZooKeeper懵懵懂懂,后来心里有很多疑问。比如,那时根本搞不清ZooKeeper是如何实现集群调度的,client的意义和znode的意义是什么?leader选举是ZooKeeper服务器之间的策略算法,还是Client之间的策略算法,甚至当时我真的混淆了(书中也提到了这一点)?ZooKeeper到底起了什么作用?而且最开始的一个错误理解,认为每一台Kafka服务器上都需要一个ZooKeeper,然后ZooKeeper来帮助Kafka实现集群内的数据一致性等特性。

当时按照教程搭建了Kafka集群,应用起来也是行云流水,好像跟ZooKeeper没有多大关系了。后来,我买了本《Hadoop: The Definitive Guide 4th Edition》。当通读了ZooKeeper相关章节后,我的心里对我之前ZooKeeper的认识,只剩下两个字了——呵呵-_-|||

一切都好像拨云见日那样清爽了。不仅仅是对ZooKeeper的认识更深了,也让自己对分布式系统的认识上升了一个台阶。

最后,我考虑要整理一下关于ZooKeeper的读书笔记,其实内容多是读书时自己的翻译。那为什么不把《Hadoop: The Definitive Guide 4th Edition》关于ZooKeeper的内容翻译过来呢,这样不是对于我来说更简单一些?于是,我就在我的博客上开始了翻译工作。

经过两个月陆陆续续的翻译,现在终于可以发出来了!本书的内容来自《Hadoop: The Definitive Guide 4th Edition》,在这里向书的作者和贡献者致以崇高的敬意。

本书的内容纯属个人业余翻译,欢迎各位读者批评!这里留下作者的email,欢迎大家吐槽!holynull@126.com