• 研究Zookeeper的原理(一)


     阅读声明:以下内容是结合网上材料所写个人理解,如有不当,欢迎大家指正~~~谢谢

    一、Zookeeper介绍

      zookeeper,见名知意嘛,zoo动物园,keeper保持者、管理员,结合起来就是动物管理员,为什么这么说呢?不放大家可以看一看目前大数据技术:比如Hadoop的logo是一个黄色的大象、HBase的log像是一个鲸鱼、Hive的logo就比较奇特了,是蜜蜂的身体与Hadoop大象的象头的结合体,等等等。由此我们看来大数据技术就像是一个动物园,而zookeeper就像是一个动物园的管理员,它的logo就更表明了它的含义。

      说了那么多闲话,下面开始进入正题,看Apache官网给它的定义:

      ZooKeeper是一个分布式的协调服务框架,ZooKeeper可以解决分布式中常见的问题:集群管理、统一命名服务、信息配置管理、分布式锁等。

    二、ZooKeeper的基本概念

      学好一门技术,首先我们得对这门技术的原理特别清楚,下面我们进入ZooKpper的结构,如下

      

      1)ZooKeeper中只有一个根节点/,每个节点都可以拥有子节点,每个节点称为zNode节点,同时也可以存储数据。

      2)多个节点形成zNode树,存储父子之间关系及节点信息

      3)zNode树是维系在内存中,以供快速查询及快速响应

      4)  操作节点:都是相对于根节点来说,例如ls /zk_1

      5)节点类型:

          ①普通持久节点:create  /test01  123(当创建此节点的客户端线程挂掉后,该节点依然存储)

          ②普通临时节点:create -e /test01  123(当创建此节点的客户端线程挂掉后,该节点会被删除)

          ③顺序持久节点:create -s /test01  123(顺序指的是在指定的路径下拼上一个递增的顺序号)

          ④临时持久节点:create -e -s  /test01  123(当创建此节点的客户端线程挂掉后,该节点会被删除,顺序指的是在指定的路径下拼上一个递增的顺序号)

      这里额外说明,临时节点的作用:管理集群服务的节点。

      

    三、ZooKeeper的常用命令

    服务端的常用命令

         

    客户端的常用命令

        

    四、Zookeeper的应用场景

    ①集群管理

      

    ②集群统一的配置信息管理

      

    ③ZooKeeper应用于集群Master的监控以及主备切换

      

    ④ZooKeeper应用于集群中统一的命名

      

    ⑤ZooKeeper应用于分布式锁

      (这里我的理解不够深,下次补充Redis应用于分布式锁)

  • 相关阅读:
    css知识点
    javascript 中闭包
    javascript 继承方法总结
    css滚动滚轮事件
    关于闭包的总结
    xpth xslt
    好的js函数
    自动化测试实施(4)
    自动化测试实施(5)
    自动化测试实施(3)
  • 原文地址:https://www.cnblogs.com/rmxd/p/11294532.html
Copyright © 2020-2023  润新知