zookeeper:3
- 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服务器上,直到主动删除。
- 持久化有序节点 :每个节点都会为它的一级子节点维护一个顺序。
- 临时节点 : 临时节点的生命周期和客户端的会话保持一致。当客户端会话失效,该节点自动清理。
- 临时有序节点 : 在临时节点上多勒一个顺序性特性。
- 会话:未连接状态--------> 连接中状态 ------------> 已连接状态-------------> 断开状态

- zookeeper命令操作
sh zkServer.sh start //bin目录下启动服务 sh zkCli.sh -server localhost:2181 //连接到客户端 ls / //查看目录 help //查看命令

create [-s] [-e] path data acl
-s 表示节点是否有序 -e 表示是否为临时节点 默认情况下,是持久化节点
get path [watch]
获得指定 path的信息
set path data [version]
修改节点 path对应的data 乐观锁的概念:数据库里面有一个 version 字段去控制数据行的版本号
delete path [version]
删除节点
- watcher:zookeeper提供了分布式数据发布/订阅,zookeeper允许客户端向服务器注册一个watcher监听。当服务器端的节点触发指定事件的时候会触发watcher,服务端会向客户端发送一个事件通知。watcher的通知是一次性,一旦触发一次通知后,该watcher就失效。
- ACL:zookeeper提供控制节点访问权限的功能,用于有效的保证zookeeper中数据的安全性。避免误操作而导致系统出现重大事故。CREATE /READ/WRITE/DELETE/ADMIN。
- 数据节点stat的信息

cversion = 0 子节点的版本号 aclVersion = 0 表示acl的版本号,修改节点权限 dataVersion = 1 表示的是当前节点数据的版本号
czxid 节点被创建时的事务ID
mzxid 节点最后一次被更新的事务ID
pzxid 当前节点下的子节点最后一次被修改时的事务ID
ctime = Sat Aug 05 20:48:26 CST 2017
mtime = Sat Aug 05 20:48:50 CST 2017
ephemeralOwner = 0x0 创建临时节点的时候,会有一个sessionId 。 该值存储的就是这个sessionid
dataLength = 3 数据值长度
numChildren = 0 子节点数
- 数据存储:内存数据和磁盘数据
- zookeeper会定时把数据存储在磁盘上。
- DataDir = 存储的是数据的快照:快照: 存储某一个时刻全量的内存数据内容
- DataLogDir 存储事务日志

上图命名格式:log.zxid
- 查看事务日志的命令:java -cp :/opt/zookeeper-3.4.10/lib/slf4j-api-1.6.1.jar:/opt/zookeeper-3.4.10/zookeeper-3.4.10.jar org.apache.zookeeper.server.LogFormatter log.3
- zookeeper 有三种日志
- zookeeper.out :运行日志。
- 快照 :存储某一时刻的全量数据。
- 事务日志 :事务操作的日志记录。
zookeeper:3的更多相关文章
- 《从Paxos到Zookeeper:分布式一致性原理与实践》【PDF】下载
内容简介 Paxos到Zookeeper分布式一致性原理与实践从分布式一致性的理论出发,向读者简要介绍几种典型的分布式一致性协议,以及解决分布式一致性问题的思路,其中重点讲解了Paxos和ZAB协议. ...
- zookeeper:2
单机环境下安装: 下载地址:http://apache.fayea.com/zookeeper/stable/ 解压zookeeper :tar -zxvf zookeeper-3.4.10.tar. ...
- zookeeper:1
分布式环境的特点 分布性:多台机器位置不同,但是相互协同做某一件事情. 并发性:程序运行过程中,并发性操作是很长见的.比如:同一个分布式系统中的多个节点,同时访问一个共享资源.(数据库,分布式存储) ...
- ZooKeeper:第三方客户端 ZKClient
ZKClient ZKClient的设计 ZKClient组件说明 重要的处理流程说明 启动ZKClient 为节点注册Watcher ZooKeeper的变更操作 客户端处理变更 序列化处理 ZKC ...
- ZooKeeper:Java客户端网络处理
了解ZooKeeper客户端的实现,对于使用ZooKeeper的客户端非常重要. 通过对客户端源码的阅读,了解了如下信息: 创建ZooKeeper对象时,应会创建一个ClientCnxn(代表了客户端 ...
- ZooKeeper:数据模型
ZooKeeper数据模型 ZNode ZNode 分类 Stat Watcher Watcher工作原理 Watcher事件说明 Watcher注册 事件发布 示例 ZooKeeper 数据模型 整 ...
- ZooKeeper:Quick Start
下载.安装与配置 下载地址 安装 配置 ZooKeeper bin目录下脚本说明 Server 启动.停止 客户端操作 使用简易客户端访问 使用Java客户端访问 使用开源客户端ZkClient访问 ...
- Zookeeper:分布式程序的基石
一.目录 1.zookeeper是什么? 2.安装.配置.启动.监控 3.javaApi基础用法 4.应用场景 5.CAP理论/paxos算法 二.zookeeper简介 官方版:zookeeper是 ...
- ZooKeeper:win7上安装单机及伪分布式安装
zookeeper是一个为分布式应用所设计的分布式的.开源的调度服务,它主要用来解决分布式应用中经常遇到的一些数据管理问题,简化分布式应用,协调及其管理的难度,提高性能的分布式服务. 本章的目的:如何 ...
随机推荐
- 隐藏Nginx、Apache、PHP的版本号
Nginx: 在nginx配置文件nginx.conf中,加入以下代码: server_tokens off; Apache: 在apache配置文件httpd.conf中,加入以下代码: Serve ...
- Linux使用shell解压tar.Z格式文件
建设当前目录下有一个名为test.tar.Z的文件. 使用如下指令可以将其解压,并将解压后的所有文件放置在当前目录下: zcat test.tar.Z | tar -xvf - 如果想要将解压缩的文件 ...
- Burpsuite—渗透测试神器
Google浏览器插件---SwitchyOmega Firefox浏览器插件---SwitchyOmega hosts代理工具---SwitchHosts[右击使用管理员权限打开] 双击burp-l ...
- Node express post 大小设置
body-parser 默认限制了body长度 var bodyParser = require('body-parser'); app.use(bodyParser.json({"limi ...
- 最新 思贝克java校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.思贝克等10家互联网公司的校招Offer,因为某些自身原因最终选择了思贝克.6.7月主要是做系统复习.项目复盘.LeetCo ...
- laydate年份选择,关闭底框,点击指定年份就选择然后关闭控件,翻页不选择也不关闭控件
如下图,翻页不选择也不关闭.点击指定年份时再选择和关闭控件 代码如下 // 默认没有选择,把判断赋值当前时间 var iYearCode = parseInt(new Date().getFullYe ...
- C语言程序设计II—第十周教学
第十周教学总结(29/4-5/5) 教学内容 本周的教学内容为:9.2 学生成绩排序 知识点:结构数组的定义.初始化和数组成员引用:9.3 修改学生成绩 知识点:结构指针指向操作,结构指针作为函数参数 ...
- 乐字节Java变量与数据类型之一:Java编程规范,关键字与标识符
大家好,我是乐字节的小乐,这次要给大家带来的是Java变量与数据类型.本文是第一集:Java编程规范,关键字与标识符. 一.编程规范 任何地方的名字都需要见名知意: 代码适当缩进 书写过程成对编程 对 ...
- PCL学习(三) SAC-IA 估记object pose
SAC-IA是基于RANSAC算法的对齐算法 通过降采样提高法向计算.FPFH特征的计算 最后通过SAC-IA计算得到对齐的旋转和平移 #include <Eigen/Core> #inc ...
- MySQL安装与连接
1.安装 下载地址:https://dev.mysql.com/downloads/mysql/ 常见问题及解决办法:https://blog.csdn.net/chen97_08/article/d ...