文档章节

zookeeper:zookeeper学习笔记

琴兽
 琴兽
发布于 03/31 19:05
字数 707
阅读 177
收藏 2

PS:本篇博客仅仅是个人的笔记,且是个人的理解,文字较为口语化,如有错误,请大牛指出。如果想了解更深入的,可以根据我这篇博客的情况自行查找网上资料(官网或者其他大牛的博客详解)

一、zookeeper的工作流程

zookeeper是整个集群的注册中心,所有的client端想要发起请求,都要经过zookeeper,并通过投票(超过半数)才能得到响应。

二、zookeeper投票机制

zookeeper集群中可以有多个zookeeper server,其中会有一个leader server,其他的都是follower server,当然,leader server也是通过投票选出来的,当票数过半是就可以通过,如果只有一个zookeeper的话,那这个zookeeper就是leader server。client发起的请求(增删改操作,查询操作是由server直接返回,不需要投票)也是通过这种投票机制得到响应的。

三、zookeeper的个数

一般zookeeper的个数要是奇数个,偶数个也是可以的,但没必要。

1、容错:例如,搭建3个和搭建4个zookeeper集群,此时如果要通过client发起的请求,那么3个zookeeper的集群要2票就能通过,那么这个集群就允许一台zookeeper挂掉;而4台zookeeper的集群就要3票才能通过,那么集群也只允许挂一台。既然都允许挂掉一台,那么就显得4台zookeeper就显得浪费了。

2、splite-brain(脑裂):当集群分裂了成了两个集群,那么就容易出现这个问题,同样以3台和4台为例。当集群为3台时,可能会被分成1台和2台,那么此时2台的集群投票选出leader server时,就可以以2(超过半数)方式选出一个leader server;当集群为4台时,如果被分成了1台和3台是可以的,但如果被分成了2台和2台,那么无论怎么投票都无法选出一个leader server,就会出现所有的client的请求都被接受了,但无法给出响应。

四、zookeeper的常用client操作

进入zookeeper:./zkCli.sh -server 127.0.0.1:2181

创建znode:create /zk data

删除znode:delete /zk

查看znode:ls /

查看某个znode信息:get /zk

修改znode的值:set /zk aaa

 

待续。。。

 

 

第一篇:本篇博客为zookeeper相关的第一篇博客

下一篇:https://my.oschina.net/u/2430231/blog/3032156

© 著作权归作者所有

琴兽
粉丝 1
博文 15
码字总数 11509
作品 0
杭州
私信 提问
ZooKeeper教程资源收集(简介/原理/示例/解决方案)

菩提树下的杨过: ZooKeeper 笔记(1) 安装部署及hello world ZooKeeper 笔记(2) 监听数据变化 ZooKeeper 笔记(3) 实战应用之【统一配置管理】 ZooKeeper 笔记(4) 实战应用之【消除单点故障】...

easonjim
2017/09/05
0
0
ZooKeeper学习笔记-CentOS7.5安装ZooKeeper

ZooKeeper学习笔记-CentOS7.5安装ZooKeeper 安装java环境 安装ZooKeeper 安装java环境 你ZooKeeper的运行需要java环境。 下载 如未安装java环境,下载最新版本的java: https://www.oracle.c...

Super_RD
2018/12/04
0
0
认识ZooKeeper运行环境

文档背景: 安装ZooKeeper已经有一段时间了。中间停了一段时间,今天再用发现已经生疏了。忘了zookeeper安装在集群的哪几台机器上了。 目的: 现对拿到一个新的zookeeper环境时,如何认识zoo...

hiqj
2015/07/27
385
0
ZooKeeper 学习笔记之扫盲

题外话:从字面上来看,ZooKeeper表示动物园管理员,而Hadoop生态系统中,许多项目的Logo都采用了动物,比如Hadoop采用了大象的形象,所以可以ZooKeeper就是对这些动物进行一些管理工作的。 ...

大数据之路
2012/07/15
364
0
dubbo学习笔记 第一章 zookeeper安装配置

dubbo的实际使用中,基本都是使用zookeeper来管理它的服务,以及实现分布式调用。至于zookeeper是什么,具有什么用户,大家可以百度搜索了解一下。实际生产环境中,zookeeper的应用服务数目,...

sesamefox
2017/10/26
101
0

没有更多内容

加载失败,请刷新页面

加载更多

springboot2.0 maven打包分离lib,resources

springboot将工程打包成jar包后,会出现获取classpath下的文件出现测试环境正常而生产环境文件找不到的问题,这是因为 1、在调试过程中,文件是真实存在于磁盘的某个目录。此时通过获取文件路...

陈俊凯
今天
6
0
BootStrap

一、BootStrap 简洁、直观、强悍的前端开发框架,让web开发更加迅速、简单 中文镜像网站:http://www.bootcss.com 用于开发响应式布局、移动设备优先的WEB项目 1、使用boot 创建文件夹,在文...

wytao1995
今天
10
0
小知识:讲述Linux命令别名与资源文件的区别

别名 别名是命令的快捷方式。为那些需要经常执行,但需要很长时间输入的长命令创建快捷方式很有用。语法是: alias ppp='ping www.baidu.com' 它们并不总是用来缩短长命令。重要的是,你将它...

老孟的Linux私房菜
今天
8
0
《JAVA核心知识》学习笔记(6. Spring 原理)-5

它是一个全面的、企业应用开发一站式的解决方案,贯穿表现层、业务层、持久层。但是 Spring 仍然可以和其他的框架无缝整合。 6.1.1. Spring 特点 6.1.1.1. 轻量级 6.1.1.2. 控制反转 6.1.1....

Shingfi
今天
8
0
Excel导入数据库数据+Excel导入网页数据【实时追踪】

1.Excel导入数据库数据:数据选项卡------>导入数据 2.Excel导入网页数据【实时追踪】:

东方墨天
今天
11
1

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部