1 Zookeeper入门
1.1 概述

1.2 特点

1.3 数据结构

1.4 应用场景

统一命名服务

统一配置管理

统一集群管理

服务动态上下线

软负载均衡

1.5 下载地址


2 Zookeeper本地安装
2.1 本地模式安装

2.2 配置参数解读

3 Zookeeper集群操作
3.1 集群操作
3.1.1 集群安装


3.1.2 选举机制(面试重点)
Zookeeper选举机制------第一次启动

Zookeeper选举机制------非第一次启动

3.1.3 ZK 集群启动停止脚本

3.2 客户端命令行操作
3.2.1 命令行语法

3.2.2 znode 节点数据信息

3.2.3 节点类型(持久/短暂/有序号/无序号)
3.2.4 监听器原理



3.2.5 节点删除与查看

3.3 客户端 API 操作
前提:保证 hadoop102、hadoop103、hadoop104 服务器上 Zookeeper 集群服务端启动。
3.3.1 IDEA 环境搭建

3.3.2 创建 ZooKeeper 客户端

3.3.3 创建子节点

3.3.4 获取子节点并监听节点变化

3.3.5 判断 Znode 是否存在

3.4 客户端向服务端写数据流程
写流程之写入请求直接发送给Leader节点

写流程之写入请求发送给follower节点

4 服务器动态上下线监听案例
4.1 需求

4.2 需求分析
服务器动态上下线

4.3 具体实现

4.4 测试


5 Zookeeper分布式锁案例

分布式锁案例分析

5.1 原生 Zookeeper 实现分布式锁案例





5.2 Curator 框架实现分布式锁案例
6 企业面试真题(面试重点)
6.1 选举机制

6.2 生产集群安装多少 zk 合适?

6.3 常用命令
