• 【Zookeeper02】ZK的作用以及使用


            上一篇介绍了ZK的安装以及集群的搭建,这只能算是个软件安装过程,具体是做什么的、怎么用也没有做解释,这一篇中博主就自己的私人理解简单写一下:

       

    1、是什么:

            a、Zookeeper是一个分布式协调服务,是一个中间件。

            b、能提供主从协调、服务器节点控制、统一配置管理、分布式共享锁、统一名称服务等功能,比较有名的是大数据以及dubbo中服务的注册以及发现。

             c、本质上只是管理、读取用户提交的数据,并为数据提供监听服务。

    2、应用场景:

           大数据

           服务注册与发现

           等等

    3、一些概念:

       a、 ZK的角色:

        1、leader(主节点) ,不是固定的,启动后根据选举算法选出

        2、follower(从节点)

        b、ZK数据结构

         1、一颗与目录结构类似的树,根节点为"/",子节点为root下的 “/child1”、“/child2”等

         2、树的每个节点为zNode,具有唯一的路径标识

         3、每个zNode节点可以包含数据和子节点

         4、通俗来说,key就是目录结构的写法,以此也可以表达父子关系

         5、节点分为短暂节点(断开连接删除)与永久节点(断开连接不删除)

          create -e /root

    4、zkcli的简单使用

          a、安装以及启动     点击打开链接

          b、控制台客户端

          打开客户端: root@ubuntu15:/usr/local/zookeeper-3.4.10/bin# ./zkCli.sh

          查看命令:

    [zk: localhost:2181(CONNECTED) 0] help
    ZooKeeper -server host:port cmd args
    	stat path [watch]
    	set path data [version]
    	ls path [watch]
    	delquota [-n|-b] path
    	ls2 path [watch]
    	setAcl path acl
    	setquota -n|-b val path
    	history 
    	redo cmdno
    	printwatches on|off
    	delete path [version]
    	sync path
    	listquota path
    	rmr path
    	get path [watch]
    	create [-s] [-e] path data acl
    	addauth scheme auth
    	quit 
    	getAcl path
    	close 
    	connect host:port
    [zk: localhost:2181(CONNECTED) 1] 

            切换节点:

    [zk: localhost:2181(CONNECTED) 1] connect 192.168.0.16:2181
    
    [zk: 192.168.0.16:2181(CONNECTED) 2] 

            创建与读取数据:

    [zk: 192.168.0.16:2181(CONNECTED) 2] ls
    [zk: 192.168.0.16:2181(CONNECTED) 3] ls /
    [zookeeper]
    [zk: 192.168.0.16:2181(CONNECTED) 4] create /child1 thisischild
    Created /child1
    [zk: 192.168.0.16:2181(CONNECTED) 5] ls /                       
    [zookeeper, child1]
    [zk: 192.168.0.16:2181(CONNECTED) 6] create /child1/grandSon  this is grandson
    Created /child1/grandSon
    [zk: 192.168.0.16:2181(CONNECTED) 7] ls child1
    Command failed: java.lang.IllegalArgumentException: Path must start with / character
    [zk: 192.168.0.16:2181(CONNECTED) 8] ls /child1
    [grandSon]
    [zk: 192.168.0.16:2181(CONNECTED) 9] get /child1
    thisischild
    cZxid = 0x100000006
    ctime = Thu Jul 05 00:30:41 PDT 2018
    mZxid = 0x100000006
    mtime = Thu Jul 05 00:30:41 PDT 2018
    pZxid = 0x100000007
    cversion = 1
    dataVersion = 0
    aclVersion = 0
    ephemeralOwner = 0x0
    dataLength = 4
    numChildren = 1



    5、java驱动提供的API

  • 相关阅读:
    WinForm控件之【Button】
    P4168 蒲公英 题解
    U91741 题解
    树链剖分 学习笔记
    GCD 及 EXGCD 复习笔记
    javascript中的对象拷贝
    关于Vue.js的v-for,key的顺序改变,影响过渡动画表现
    ajax无刷新上传和下载
    站点开启https和http2
    windows挂载EFI分区
  • 原文地址:https://www.cnblogs.com/the-fool/p/11054110.html
Copyright © 2020-2023  润新知