ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Hadoop、Hbase、kafka、dubbo等重要组件。在分布式泛滥的今天,ZooKeeper发挥着非常大的作用。
ZooKeeper是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。ZooKeeper包含一个简单的原语集,提供Java和C的接口。
本套教程从Zookeeper的使用出发,详细讲解Zookeeper的环境搭建、zkCli的使用、Zookeeper的Java客户端以及开源客户端的使用。从实践反推理论,讲解完毕操作以后,开始认识分布式一致性的原理,Paxos算法以及Zookeeper的ZAB协议。再从理论扩展到实践,学习Zookeeper的众多使用场景,每个场景都会进行详细的讲解,并使用代码进行模拟实现。比如发布订阅,比如master选举等。内容环环相扣,让晦涩难懂的理论与实践相结合,一步步学会Zookeeper。
通过本套教程的学习,可以深入理解Zookeeper的核心原理,熟练掌握Zookeeper的操作,对于大型分布式项目能够有更加深刻的理解。
本套教程中使用的操作系统为Linux,编程语言为Java,项目管理工具Maven,开发工具Eclipse。