Zookeeper
2019-11-09 22:12:10 208 举报
AI智能生成
zk
作者其他创作
大纲/内容
角色组成
Leader
Follower
Observer
znode
节点不能重复
1.永久节点(PERSISTENT )
2.临时节点(Ephemeral)
3.永久有序(Persistent_Sequential)
4.临时有序(Ephemeral_Sequential)
源码(org.apache.zookeeper.CreateMode)
stat(ZNode数据信息)
czxid
节点创建时的zxid
mzxid
节点最新一次更新发生时的zxid
ctime
节点创建时的时间戳.
mtime
节点最新一次更新发生时的时间戳.
dataVersion
节点数据的更新次数
cversion
其子节点的更新次数
aclVersion
节点ACL(授权信息)的更新次数
ephemeralOwner
dataLength
节点数据的字节数
numChildren
子节点个数.
集中式系统
一台或者多台计算器组成中心节点
分布式系统
1.分布性
2.对等性
集群中没有主从之分
数据副本
服务副本
3.并发性
4.缺乏全局时钟
5.故障总是会发生
6.分布式环境出现的问题
通信异常
网络分区
三态
节点故障
watcher
KeeperState
SyncConnected
EventType
None
NodeCreated
NodeDeleted
NodeDataChanged
NodeChildChanged
Disconnected
Expired
AuthFailed
Zookeeper
运维
zoo.cfg参数
tickTime
syncLimit
initLimt
dataDir
dataLogDir
clientPort
Server.A=B:C:D
常用命令
ls
ls 命令来查看某个目录包含的所有文件
ls2
create
创建znode,并设置初始内容
get
获取znode的数据
set
修改znode内容
delete
删除znode
quit
退出客户端
help
帮助命令
rmr
递归删除 可以删除包含有子节点的
源码
org.apache.zookeeper.ZooKeeperMain
ACID
原子性(Atomicity)
全部执行成功
全部不执行
一致性(Consistency)
隔离性(Isolation)
持久性(Durability)
CAP定理
分布式节点多个数据副本应该是一致的
可用性(Availablity)
在有限时间返回结果
返回结果指的是正常的响应结果
分区容错性(Partiton tolerance)
一个分布式系统无法保证满足这三个需求,只能满足其中的两项
BASE理论
基本可用
响应时间上的损失
功能上的损失
弱状态
最终一致性
因果一致性
读写之所写
会话一致性
单调读一致性
单调写一致性
一致性协议
协议
2PC协议
大部分关系型数据库使用此协议
阶段1:提交事务请求
1.事务询问
2.执行事务
3.各参与者向协调者反馈事务询问的响应
阶段2:执行事务提交
1.执行事务提交
1.发送提交请求
2.事务提交
3.反馈事务提交结果
4.完成事务
流程图
2.中断事务
1.发送回滚请求
2.事务回滚
3.返回事务回滚结果
4.中断事务
缺点:
3PC协议
2PC协议的改进版本
阶段1:CanCommit
2.各参与者向协调者反馈事务询问的响应
阶段2:执行事务预提交
1.发送预提交请求
2.事务预提交
3.各参与者向协调者反馈事务执行的响应
阶段2:中断事务
1.发送中断请求
阶段3:执行提交
阶段3:中断事务
3.反馈事务回滚结果
Paxos算法
一种提高分布式容错性的一致性算法
协调者
统一调度所有分布式节点的执行逻辑
参与者
这些被调度的分布式节点
0 条评论
回复 删除
下一页