JavaShuo
Zookeeper:用客户端对Zookeeper进行操作
时间 2021-08-15
zookeeper集群搭建
点这里
1 集群搭建成功后,我们启动客户端
2 成功启动如下
3 输入help,就是操作zookeeper的所有命令
4 zookeeper的数据结构(关注公众号:java进阶)
a、层次化的目录结构,命名符合常规文件系统规范(见下图)
b、每个节点在zookeeper中叫做znode,并且其有一个唯一的路径标识
c、节点Znode可以包含数据和子节点
d、客户端应用可以在节点上设置监视器
5 ls /查看节点;创建节点create,节点可以保存数据
6 app1下再创建子节点,并保存数据
7
a . Znode有两种类型:
短暂(ephemeral):断开连接自己删除
create 命令后的[e] 例如:create -e app1/ 8888
如果目前的客户端断掉连接,这个节点zookeeper自动就会把此节点删掉
(就可以感知哪个机器掉线,然后通知给所有其他节点)
持久(persistent)(断开连接不删除)
客户端断不断,节点都在,除非手动删除
b. Znode有
四种形式
的目录节点(默认是persistent )
PERSISTENT
PERSISTENT_SEQUENTIAL(持久序列/test0000000019 )
EPHEMERAL
EPHEMERAL_SEQUENTIAL
quit退出后重新bin/zkClin.sh
发现创建的临时zhangfan节点没有了(欢迎加我微信:ZF363133213)
8
创建znode时设置顺序标识,znode名称后会附加一个值,顺序号是一个单调递增的计数器,由父节点维护
在分布式系统中,顺序号可以被用于为所有的事件进行全局排序,这样客户端可以通过顺序号推断事件的顺序
9 set 改变节点数据(其他两台也会同步更新)
10 监听,一台上节点数据改变,另一台可以感应
我的公众号:java进阶