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

一、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应用于分布式锁)

研究Zookeeper的原理(一)的更多相关文章

  1. 研究Zookeeper的原理(二)

    阅读声明:以下内容是结合网上材料及工作内容所写的个人理解,如有不当,欢迎大家指正~~~谢谢啦 一.ZooKeeper的选举机制.FailOver机制 我们知道ZooKeeper在分布式环境中协调服务, ...

  2. zookeeper选举原理

    zookeeper的领导者选举和原子广播   目录:     1.工作原理概述     2.Fast Leader选举算法(领导者选举)     3.Leader与Follower同步数据(原子广播) ...

  3. zookeeper工作原理、安装配置、工具命令简介

    1.Zookeeper简介 Zookeeper 是分布式服务框架,主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务.状态同步服务.集群管理.分布式应用配置项的管理等等. 2.zo ...

  4. Zookeeper 3、Zookeeper工作原理(详细)

    1.Zookeeper的角色 » 领导者(leader),负责进行投票的发起和决议,更新系统状态 » 学习者(learner),包括跟随者(follower)和观察者(observer),follow ...

  5. [转载] zookeeper工作原理、安装配置、工具命令简介

    转载自http://www.cnblogs.com/kunpengit/p/4045334.html 1 Zookeeper简介Zookeeper 是分布式服务框架,主要是用来解决分布式应用中经常遇到 ...

  6. Zookeeper 3、Zookeeper工作原理(转)

    1.Zookeeper的角色 » 领导者(leader),负责进行投票的发起和决议,更新系统状态 » 学习者(learner),包括跟随者(follower)和观察者(observer),follow ...

  7. 学习Zookeeper之第3章Zookeeper内部原理

    第 3 章 Zookeeper 内部原理 3.1 选举机制 3.2 节点类型 3.3 stat 结构体 3.4 监听器原理   1)监听原理详解   2)常见的监听 3.5 写数据流程 第 3 章 Z ...

  8. 【转载】深入研究Windows内部原理绝对经典的资料

    原文:深入研究Windows内部原理绝对经典的资料 另一篇资料:深入研究Windows内部原理系列 (为了方便大家下,我打包了放在一下地址: 1-6:http://download.csdn.net/ ...

  9. 分布式协调服务ZooKeeper工作原理

    分布式协调服务ZooKeeper工作原理 原创 2016-02-19 杜亦舒 性能与架构 性能与架构 性能与架构 微信号 yogoup 功能介绍 网站性能提升与架构设计 大数据处理框架Hadoop.R ...

随机推荐

  1. 概率dp (背包+概率) 背包的多一点

    题意:XX想抢劫银行,当危险率低于P的时候才能行动,现在给出每家银行的金钱mi和危险率pi,求最多能获得多少金钱: 题解:危险率是P,那么安全率就是1-P,那么XX抢劫的所有银行的安全率之积就不能小于 ...

  2. 动态调整线程数的python爬虫代码分享

    这几天在忙一个爬虫程序,一直在改进他,从一开始的单线程,好几秒一张图片(网络不好),,,到现在每秒钟十几张图片,,, 四个小时586万条数据,,,简直不要太爽 先上图 最终写出来的程序,线程数已经可以 ...

  3. iptables详解(3):增删改存

    总结一下iptables规则管理的增删改存命令: 1.添加规则: 1)在指定表的指定链的末尾添加一条规则,-A选项表示在末尾添加,-j表示采取的动作,例如DROP.REJECT.ACCEPT 命令语法 ...

  4. 自己centos7成功的修改了主机名(记录了该改哪些文件)

    1.更改/etc/hosts 方法(1)可以直接的去更改这个文件,更改的格式:直接vi编辑器打开,之后直接写上自己想要的主机名字就好,不用写成键值对的形式 [root@localhost etc]# ...

  5. tomcat使用中的笔记

    1.修改tomcat命令窗口的名字 平时在使用tomcat的时候,经常会在一台机器上启动多个tomcat,但是默认的情况下启动多个就不好区分对应启动了什么应用,这时我们就可以通过修改tomcat窗口名 ...

  6. Django报错 The serializer field might be named incorrectly and not match any Got AttributeError when attempting to get a value for field `author_for` on serializer `KnownledgeBaseListSerializer`

    1.问题描述,在设置,model部分字段的serialier时,出现如下报错 字段如下: # 知识库List class KnownledgeBaseListSerializer(serializer ...

  7. 查看Oracle的表中有哪些索引(用user_indexes和user_ind_columns)

    用user_indexes和user_ind_columns系统表查看已经存在的索引 对于系统中已经存在的索引我们可以通过以下的两个系统视图(user_indexes和user_ind_columns ...

  8. Python入门,基本数据类型

    1.Python中的注释 单行注释:#注释内容 多行注释:三引号(单或者是双) ''' 注释内容 ''' """ 注释内容 """ 2.输入 ...

  9. 如何重启Cisco LAP?

    在Cisco WLC上进入对应的AP,能够看到Reset这个AP,但是这里会有两种选择: 看到上述的描述,可能很多人都不敢轻易的操作: 1.Hardware Reset:Perform a hardw ...

  10. Python学习(二)——Python基础

    基础 1.文件后缀名: 后缀名必须是.py,否则导入模块时会出错 2.执行方式: python解释器 .py文件路径 python 进入解释器 实时输入并获取执行结果 3.解释器路径 #!/usr/b ...