雪花

三、zookeeper安装

一、简介

 

二、下载解压:

#wget http://mirrors.hust.edu.cn/apache/zookeeper/zookeeper-3.4.12/zookeeper-3.4.12.tar.gz
#tar -zxvf zookeeper-3.4.12.tar.gz

  

三、切换到 zookeeper-3.4.3/bin目录下

 

1、conf目录下提供了配置的样例zoo_sample.cfg,要将zk运行起来,需要将其名称修改为zoo.cfg。 

 

启动  ./zkServer.sh start 

 

2、进入bin目录,启动zookeeper:sh  zkServer.sh  start   

      验证是否启动:jps命令查看活动的java进程

 

查看状态:sh  zkServer.sh  status

停止服务:sh zkServer.sh stop

  

3、连接-直接执行zkCli.cmd或者zkCli.sh命令默认以主机号 127.0.0.1,端口号 2181 来连接zk,如果要连接不同机器上的zk,可以使用 -server 参数,例如:

./zkCli.sh -server127.0.0.1:2181

  

  

 四、Zookeeper客户端启动及操作

Zookeeper存储数据的结构是一棵树,Zookeeper数据结构的特征:

1、有一个根节点 /,对于Zookeeper的操作都要基于根节点
2、每个节点都叫做Znode节点,都可以创建自己的子节点,都可以存储数据
3、整个Znode树会存储在内存中,提高查询速度。为了防止数据丢失,同时也会把Znode树落到磁盘上,磁盘路径即配置文件zoo.cfg里dataDir指定的目录
4、Znode的路径是全局唯一的
5、创建节点时,需指定初始化数据,否则创建报错
6、Zookeeper是事务的概念,针对每个事务(创建,更新或删除节点等),Zookeeper都会分配一个递增的Zxid(事务id)。其中有cZxid(创建节点的事务id),mZxid(修改节点的事务id)

  

1、节点操作

查询节点 ls /     ls /zookeeper

创建节点:create /node01 hello

创建了节点 node01,并初始化数据为 “hello” 

查看节点:get /node01

可以看出,当执行命令  create /node01 hello时,这就是一个写的事务,会分配一个事务id,事务id是一个自增的id。

修改节点数据:set /node01 hellodfr

 

删除节点:delete /node01 单个删除,存在子节点则删除失败    rmr /node01 递归删除

 

2、节点类型

create /park01 "dateStr" 普通持久节点
create -e /park01 "dateStr" 普通临时节点
create -s /park01 "dateStr" 顺序持久节点 
create -e -s /park01 "dateStr" 临时顺序节点 

 

临时节点	
客户端连接zookeeper服务并创建临时节点后,若客户端掉线,则临时节点会消失。
该特性可以用来检测集群中,有哪些机器挂掉

顺序节点	
创建顺序节点后,会在节点名称后带上一个自增的顺序id
如创建节点 create -s /park01 ddff,真正创建的节点名称为 park010000000009

  

五、通过代码操作zookeeper

  

 

参考 :https://blog.csdn.net/qinshi965273101/article/details/82937890

 

posted @ 2019-02-17 18:15  十色  阅读(192)  评论(0编辑  收藏  举报