1、入门

概述:工作机制

数据结构:ZNode 树型文件系统

统一命名服务、统一配置管理、统一集群管理、服务器节点动态上下

线、软负载均衡等

2、安装

3、集群

选举机制:

第一次启动

非第一次启动:任期id——事务id——id

节点类型:

持久、短暂、有序号、无序号

监听器

写数据原理:

发给leader

image-20220124213707456

发给follower

image-20220124213720276

4、案例

服务器动态上下线

分布式锁

image-20220124213847011

Curator框架实现分布式锁

5、源码

选举机制:第一次、非第一次

分布式一致性:

Paxos算法

ZAB协议:消息广播、崩溃恢复

异常发生——leader选举 + 数据恢复

数据恢复——一个follower所有事务提交之后才变为follower

CAP理论:保证CP

持久化源码

image-20220124214406672

序列化源码

image-20220124214429678

服务端初始化源码-启动脚本

初始化-解析参数

初始化-过期快照删除

初始化-通信初始化

服务端加载数据源码

选举-选举准备

选举-选举执行

Follower 和 Leader 状态同步源码

状态同步细节

Leader启动

Follower启动

客户端启动

image-20220124214747431

选举