zookeeper基础

Posted ljing21

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zookeeper基础相关的知识,希望对你有一定的参考价值。

 

zoo.cfg配置文件

tickTime=2000  zookeeper中最小的时间单位长度 ms)

initLimit=10  follower节点启动后与leader节点完成数据同步的时间

syncLimit=5 leader节点和follower节点进行心跳检测的最大延时时间

dataDir=/tmp/zookeeper  表示zookeeper服务器存储快照文件的目录

dataLogDir 表示配置 zookeeper事务日志的存储路径,默认指定在dataDir目录下

clientPort 表示客户端和服务端建立连接的端口号: 2181

zookeeper中的一些概念

数据模型

zookeeper的数据模型和文件系统类似(树结构,无限级),每一个节点称为:znode.  zookeeper中的最小数据单元

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

节点特性

持久化节点   节点创建后会一直存在zookeeper服务器上,直到主动删除

持久化有序节点 :每个节点都会它的一级子节点维护一个顺序

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

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

会话

未连接状态-------->     连接中状态 ------------>        已连接状态------------->     断开状态

技术图片

 

watcher

zookeeper提供了分布式数据发布/订阅,zookeeper允许客户端向服务器注册一个watcher监听。

当服务器端的节点触发指定事件的时候会触发watcher。

服务端会向客户端发送一个事件通知watcher的通知是一次性,一旦触发一次通知后,该watcher就失效

ACL

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

CREATE /READ/WRITE/DELETE/ADMIN

 

zookeeper命令操作

sh zkServer.sh  start  //bin目录下启动服务

sh zkCli.sh -server localhost:2181   //连接到客户端

ls /  //查看目录

help    //查看命令

技术图片

 

1. create [-s] [-e] path data acl

-s 表示节点是否有序

-e 表示是否为临时节点

默认情况下,是持久化节点

2. get path [watch]

获得指定 path的信息

3.set path data [version]

修改节点 path对应的data

乐观锁的概念

数据库里面有一个 version 字段去控制数据行的版本号

4.delete path [version]

删除节点

 

以上是关于zookeeper基础的主要内容,如果未能解决你的问题,请参考以下文章

[转帖]Zookeeper学习系列 教会你Zookeeper的一些基础概念

Zookeeper详解-基础

Zookeeper学习系列 教会你Zookeeper的一些基础概念

一篇文章带您掌握ZooKeeper的基础概念

ZOOKEEPER基础教程

zookeeper基础