zookeeper 重要配置以及基础概念

本文深入解析了Zookeeper的重要配置,如tickTime、initLimit、syncLimit等,并介绍了Zookeeper的数据模型,包括持久化节点、临时节点、顺序节点等特性。同时,讲解了会话、Watcher和ACL权限控制,以及常用的操作命令。通过实例展示了节点信息,如版本号、时间戳等关键数据。
摘要由CSDN通过智能技术生成

zookeeper 配置解析

重要配置解析

tickTime=2000 //    zookeeper中最小的时间单位长度 (ms)
initLimit=10 // follower节点启动后与leader节点完成数据同步的时间(ms)
syncLimit=5 // leader节点和follower节点进行心跳检测的最大延时时间(s)
dataDir=/tmp/zookeeper  //zookeeper服务器存储快照文件的目录()
dataLogDir=/data/zookeeper // 配置 zookeeper事务日志的存储路径,默认指定在dataDir目录下
clientPort = 2181  //客户端和服务端建立连接的端口号: 2181

zookeeper基础概念

数据模型

zookeeper数据模型和文件系统类似,每一个节点称为:znode,znode是zookeeper中的最小数据单元。

每一个znode上都可以保存数据和挂载子节点,从而构成一个层次化的属性结构。

节点特性
持久化节点

创建后会一直存在zookeeper服务器上,直到主动删除。

持久化有序节点

每个节点都会为它的一级子节点维护一个顺序。

临时节点

临时节点的生命周期和客户端的会话保持一致。当客户端会话失效,该节点自动清理。

临时有序节点

在临时节点上多了一个顺序性特性

会话

客户端于zookeeper服务建立的一次连接,并在这次连接中所有处理,直到连接结束。

具体状态:not connect --> connectting —>connected–> close

Watcher

zookeeper提供了分布式数据发布/订阅,zookeeper允许客户端向服务器注册一个watcher监听。当服务器端的节点触发指定事件的时候会触发watcher。服务端会向客户端发送一个事件通知watcher的通知是一次性,一旦触发一次通知后,该watcher就失效。

ACL

zookeeper提供控制节点访问权限的功能,用于有效的保证zookeeper中数据的安全性。避免误操作而导致系统出现重大事故。

具体权限: CREATE /READ/WRITE/DELETE/ADMIN

命令操作

创建节点

create [-s] [-e] [-c] [-t ttl] path [data] [acl]

-s 是否有序

-e 是否为临时(默认为持久化)

path 节点路径

data 节点值

acl 节点权限

获取指定节点

get [-s] [-w] path

-s 获取详细信息

修改指定节点

set [-s] [-v version] path data

-s 详细信息设置

-v 版本号(乐观锁)

4.delete [-v version] path 删除指定节点

-v 版本号(乐观锁)

数据内容具体描述

[zk: localhost:2181(CONNECTED) 27] get -s /test
cZxid = 0x4 
ctime = Thu May 21 17:34:25 CST 2020
mZxid = 0xb
mtime = Thu May 21 17:43:33 CST 2020
pZxid = 0x5
cversion = 1
dataVersion = 5
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 5
numChildren = 1

cversion = 1 子节点的版本号,每操作一次子节点,cversion加1

aclVersion = 0 表示acl的版本号,修改节点权限,每改一次权限,aclVersion加1

dataVersion = 5 表示的是当前节点数据的版本号, 每操作一次节点的值,dataVersion 加1

czxid 节点被创建时的事务ID

mzxid 节点最后一次被更新的事务ID

pzxid 当前节点下的子节点最后一次被修改时的事务ID

ctime 创建时间

mtime 修改时间

ephemeralOwner = 0x0 创建临时节点的时候,会有一个sessionId 。 该值存储的就是这个sessionid。

dataLength = 5 数据值长度

numChildren = 1 子节点数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值