【ZooKeeper】
笔者坚信,每个名字都有着一个故事,或者一段含义。zoo代表动物园,keeper管理员。既然作为动物管理员,那么是不是得管理一些动物呢?
前面咱们讲到Hadoop,这货竟然是大象,不信的看图:

Hive【蜜蜂】

pig【apache pig猪】

从未想到zookeeper还可以如此的形象,真是来源于生活啊。

【主要功能】
ZooKeeper是用于维护配置信息,命名,提供分布式同步和提供组服务的集中式服务。主要功能:配置管理、名字服务、分布式锁、集群管理。
1、配置管理
像我们传统的项目配置文件,那是非常多的。尤其是涉及动态配置文件的时候。要是有一款能集中管理配置的方法就好了,我们集中修改配置。Zookeeper就可以很好的解决嘛,它使用Zab这种一致性协议,在Alibaba开源的SOA框架Dubbo中也广泛的使用Zookeeper管理一些配置来实现服务治理。

2、名字服务
一般我们项目中的访问地址都是ip地址+端口号这样的形式。但是呢,在外网的环境中不都是域名吗,哪有什么IP地址作为访问的。
可是,计算机不能识别域名,那怎么办呢?
于是我们有了DNS这个东西,我们只需要访问一个大家熟知的点,他就会告诉你这个域名对应的IP是什么。在这个点里,提供统一的入口。
【ps,什么是DNS?】
答:域名系统(服务)协议(DNS)是一种分布式网络目录服务,主要用于域名与 IP 地址的相互转换,以及控制因特网的电子邮件的发送。


3、分布式锁
Zookeeper是一个分布式协调服务,我们利用Zookeeper来协调多个分布式进程之间的活动。
例如,在一个分布式环境中,为了提高可靠性,我们在集群的每台服务器上都部署同样的服务。我们只让一个服务进行操作,会存在单点问题。那么还有一种类似线程锁的东西,就是分布式锁,在某个时刻只让一个服务去操作,当这台服务出现问题的时候锁释放,然后别的服务启动。使用需谨慎哦。
4、集群管理
在分布式的集群中,会有各种问题出现,像服务器断电,重启,网络问题,这时候的节点会进进出出的。集群中的其他机器需要感知这种变化,然后根据这种变化做出应对策略。
这时候我们就需要动态感知到集群目前的状态,还有就是当某个客户端访问某个服务的时候,就需要采用某种机制去寻找那些节点可以提供该服务--服务发现。
【ps,什么是分布式?】
答:分布式系统是多个处理机通过网络互连而构成的松散耦合系统。
具有以下四个特征:
①分布性:系统有多台服务器组成,地域上是分散的。整个系统的功能分散在各个节点上实现;
②自治性:分布式系统中的各个节点都有自己的处理机和内存,地位上平等,无主次之分。既能自治的进行工作,又能利用网络来传送信息,协调任务处理;
③并行性:各个节点可以并行执行;
④全局性:分布式系统必有存在一个单一的,全局进程通讯机制。系统中所有机器上有统一的系统调用集合。
【ps,Zookeeper与HA区别?】
答:HA是High Available缩写,是双机集群系统简称,指高可用性集群,是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,且分为活动节点及备用节点。

在Zookeeper中,没有主从关系,二是引入了新的概念: Leader(头),Flower(随从),Observer(观察者)三种角色。

Apache ZooKeeper【动物管理员】相关推荐

  1. zookeeper 动物管理员

    文章目录 1 zookeeper简介 1.1 zookeeper的定义 1.2 zookeeper的工作机制 1.3 zookeeper的特点 1.4 zookeeper的概述 1.5 zookeep ...

  2. Apache Kafka 不需要管理员:删除 Apache ZooKeeper 的依赖

    点击上方"朱小厮的博客",选择"设为星标" 后台回复"加群",加入新技术 目前,Apache Kafka 使用 Apache ZooKeep ...

  3. Apache ZooKeeper - ZK的ACL权限控制( Access Control List )

    文章目录 概述 权限模式(Scheme) 口令验证 范围验证 Super权限模式 授权对象(ID) 权限信息(Permission) ACL相关命令 跳过ACL检测 实操ACL 生成授权ID 方式一 ...

  4. Apache Zookeeper入门1

    口水:Zookeeper是我目前接触过Apache开源系统中比较复杂的一个产品,要搞清楚这个东东里面的运作关系还真不是一时半会可以搞定的事,本人目前只略知皮毛之术. ZooKeeper 是什么? Zo ...

  5. JAVA EE Apache Zookeeper / Google Chubby

    s http://zookeeper.apache.org/ Apache ZooKeeper is an effort to develop and maintain an open-source ...

  6. Will not attempt to authenticate using SASL (unknown error) (org.apache.zookeeper.ClientCnxn)

    文章目录 个人简介 一.业务场景:报错kafka.zookeeper.ZooKeeperClientTimeoutException: Timed out waiting for connection ...

  7. zookeeper动物园管理员学习笔记

    hbase hadoop里面有:1)hdfs分布式存储 2)yarn资源调度框架:3)hive数据仓库技术,在线事物分析,延迟性很高,最终用的还是mr技术,但是不再使用mr技术了 4)hbase:建立 ...

  8. Apache ZooKeeper -从初始化到对外提供服务的过程解析( 集群模式 )

    文章目录 流程图 Pre 什么是集群模式? ZooKeeper 集群模式的特点 底层实现原理 程序启动 QuorumPeer 类 Leader 服务器启动过程 Follow 服务器启动过程 小结 流程 ...

  9. Apache ZooKeeper - Leader 选举 如何保证分布式数据的一致性

    文章目录 Pre 流程图 Leader 的协调过程 ZK 是如何实现的 广播模式 恢复模式 源码实现 小结 Pre Apache ZooKeeper - 选举Leader源码流程深度解析 在 ZooK ...

最新文章

  1. php jq实现抽奖,jquery实现抽奖系统
  2. Windows7 libsvm库中grid.py的使用步骤
  3. nullnullHandling the Results 处理结果
  4. oracle--pl/sql变量定义----
  5. Xshell更改命令提示符以及背景配色
  6. mysql8强制用户开启ssl_MySQL8开启ssl加密
  7. DB2快速入门的捷径pdf
  8. 给easyui datagrid 添加mouseover和mouseout事件
  9. leetcode216. 组合总和 III(回溯)
  10. Android应用开发—浅谈MVX模式
  11. pyinstaller 打包python应用为exe后 打包出现failed to execute script
  12. AForge Video
  13. word目录怎么自动生成?写作人必学的小技巧
  14. from collections import Counter计数器
  15. 如何将扫描PDF文件转换成word,两个超简单的方法一看就会
  16. uniapp连接蓝牙相关问题
  17. 网上商城项目(购物车下单、支付)
  18. Allegro教学:关于dangling connection的解释
  19. Qt4.7.3在dm6446平台上的移植经验与教训
  20. matlab上机实习报告,matlab上机实习报告.doc

热门文章

  1. android camera使用ISO值录制视频
  2. Unity合规检测处理
  3. 【PHP面试题】请简述项目中优化SQL语句执行效率的方法,从哪些方面,SQL语句如何分析?
  4. 手动搭建HPC(高性能计算)
  5. android 图片编辑工具,图片编辑工具手机版下载
  6. ELK学习总结(2-1)mavel -》sense 和 索引初始化
  7. Jenkins 自动化部署流水线优化经验
  8. STL初步——集合Set
  9. Android开发学习之路--UI之简单聊天界面
  10. 如何是matlab中的折线图变得更加的光滑?