学习Zookeeper需要了解的专业名词
一、Zookeeper的集群角色
Leader:该角色是整个zookeeper集群工作机制中的核心
Follower:该角色是zookeeper集群状态的跟随者
Observer:在集群中充当观察者的角色
(这三类角色的具体使用会在后面的博客中详细介绍)
二、会话
会话是指客户端与zookeeper服务器的连接,zookeeper中的会话叫session,客户端靠与服务器建立一个TCP长连接来维持一个session,通过这个连接,客户端能够与zookeeper服务器保持有效的通话,也能向zookeeper集群发起请求并得到响应。
三、数据节点
zookeeper主要有两种节点
(1)集群中的一台机器称为一个节点
(2)数据模型中的数据单元Znode,分为持久节点和临时节点。zookeeper的数据模型就是一棵树,树的节点是Znode,Znode中可以保存信息(和文件系统的目录树一样,ZooKeeper树中的每个节点可以拥有子节点)

四、版本
zookeeper对于版本的概念主要有以下三种:

悲观锁:悲观锁又叫悲观并发锁,是数据库中一种非常严格的锁策略,具有强烈的排他性,能够避免不同事务对同一数据并发更新造成的数据不一致性,在上一个事务对数据的操作没有完成之前,下一个事务不能访问相同的资源。悲观锁适合数据更新竞争非常激烈的场景。
乐观锁:相比悲观锁,乐观锁应用的场景更加广泛。悲观锁简单的认为两个事务访问同一笔数据的时候一定会互相干扰,所以粗暴的采用了强烈排他的形式来控制并发操作。而乐观锁认为多个事务访问相同资源的场景是很少见的,不必在事务操作期间进行严格的并发控制。但是乐观锁也是一种锁,也是一种机制,肯定会有对并发的其他处理方式,那这个方式是怎样的呢?对于数据库来说,通常的做法是在每个表中增加一个version字段,事务修改数据前首先读出数据,当然也会把版本号读出来,然后把这个读出来的version字段的值,加入到更新语句的where条件中。比如:读出来的version值为1,则可以将更新语句这样写,update 表名 set 字段=xxx where id = 1 and version = 1,如果更新失败了说明其他事务已经对该资源做了修改,那么系统需要抛出异常给客户端,客户端通过一定的机制进行重试处理。
五、watcher
watcher(事件监听器):zookeeper允许用户在指定的节点上去注册事件监听器watcher,在服务端数据节点发生变化时,zookeeper会把该变化通知给感兴趣的客户端(即订阅了该服务端节点的客户端)
六、ACL权限控制
ACL(Access Control Lists):zookeeper集群中支持各种类型的权限控制,主要有以下几种:

学习Zookeeper需要了解的专业名词的更多相关文章
- javascript各种专业名词
刚开始学javascript经常看到各种专业名词,在此整理一下个人的学习笔记: 直接量 直接量——就是程序中直接使用的数据值,如:88 //数字(String)"hello world ...
- Android开发专业名词及工具概述
前言: 系统的学习下Android开发中涉及到的一些专业名词 和Android开发工具 名词: 一.SDK(Software Development Kit) 软件开发工具包:一般都是一些软件工程师为 ...
- [专业名词·硬件] 2、DC\DC、LDO电源稳压基本常识(包含基本原理、高效率模块设计、常见问题、基于nRF51822电源管理模块分析等)·长文
综述先看这里 第一节的1.1简单介绍了DC/DC是什么: 第二节是关于DC/DC的常见的疑问答疑,非常实用: 第三节是针对nRF51822这款芯片电源管理部分的DC/DC.LDO.1.8的详细分析,对 ...
- 学习 zookeeper
1.zookeeper是什么 zookeeper是hadoop的分布式协调服务.主要作用是对hadoop的集群节点进行监控.但是由于其功能的单一而去不依赖hadoop其他框架,所以不局限在hadoop ...
- 一脸懵逼学习Zookeeper(动物园管理员)---》高度可靠的分布式协调服务
1:Zookeeper是一个分布式协调服务:就是为用户的分布式应用程序提供协调服务 A.zookeeper是为别的分布式程序服务的 B.Zookeeper本身就是一个分布式程序(只要有半数以上节点存活 ...
- zookeeper 学习 zookeeper下载部署
下载 http://mirror.bit.edu.cn/apache/zookeeper/ 校验 解压后得到zookeeper-3.4.10.jar,使用md5sum zookeeper-3.4.10 ...
- 【转】Zookeeper学习---zookeeper 选举机制介绍
[原文]https://www.toutiao.com/i6593162565872779784/ zookeeper集群 配置多个实例共同构成一个集群对外提供服务以达到水平扩展的目的,每个服务器上的 ...
- 学习Zookeeper之第3章Zookeeper内部原理
第 3 章 Zookeeper 内部原理 3.1 选举机制 3.2 节点类型 3.3 stat 结构体 3.4 监听器原理 1)监听原理详解 2)常见的监听 3.5 写数据流程 第 3 章 Z ...
- 学习Zookeeper之第2章Zookeeper安装
第 2 章 Zookeeper安装 2.1 本地模式安装部署 2.2 配置参数解读 第 2 章 Zookeeper安装 2.1 本地模式安装部署 1)安装前准备: (1)安装 jdk (2)通过 fi ...
随机推荐
- etl工具,kettle实现循环
Kettle是一款国外开源的ETL工具,纯Java编写,可以在Window.Linux.Unix上运行,绿色无需安装,数据抽取高效稳定. 业务模型: 在关系型数据库中有张很大的数据存储表,被设计成奇偶 ...
- 有关Servlet的生命周期说法正确的有( )。
A.Servlet的生命周期由Servlet实例控制 B.init()方法在创建完Servlet实例后对其进行初始化,传递的参数为实现ServletContext接口的对象 C.service()方法 ...
- linux -- 查看ip,路由,dns
查看ip地址:ifconfig 查看gateway:route 查看dns:nm-tool
- 【vijos】1164 曹冲养猪(中国剩余定理)
https://vijos.org/p/1164 好赞orz. 对于求一组线性同余方程 x=a[i](mod m[i]) 这里任意两个m[i]和m[j]都互质 那么可以用中国剩余定理来做. 对中国剩余 ...
- hmacSHA1
import javax.crypto.Mac; import javax.crypto.SecretKey; import javax.crypto.spec.SecretKeySpec; publ ...
- [转]Shell脚本中发送html邮件的方法
<span "="">作为运维人员,免不了要编写一些监控脚本,并将监控结果及时的发送出来.那么通过邮件发送是比较常用的一种通知方式了.通常的,如果需要发送的内 ...
- JSON和对象之前的相互转换
package com.jxjson.com; import android.util.Log; import org.json.JSONArray; import org.json.JSONExce ...
- Course Selection CodeChef - RIN
All submissions for this problem are available. Read problems statements in Mandarin Chineseand Russ ...
- 【BZOJ1495】[NOI2006]网络收费 暴力+DP
[BZOJ1495][NOI2006]网络收费 Description 网络已经成为当今世界不可或缺的一部分.每天都有数以亿计的人使用网络进行学习.科研.娱乐等活动.然而,不可忽视的一点就是网络本身有 ...
- java枚举类型(转载)
public class TestEnum { /*最普通的枚举*/ public enum ColorSelect { red, green, yellow, blu ...