zookeeper的节点数据类型和特性详解

1.什么是zookeeper
2.zookeeper单机版的安装
3.zookeeper不同数据类型的介绍
4.Zookeeper的ACL权限介绍
5.zookeeper内存数据和持久化

在了解zookeeper之前,我们先来了解什么是分布式系统?在通常情况下,单个物理节点很容易达到性能、计算或者容量的瓶颈,所以这个时候需要多个物理节点共同来完成某项任务,一个分布式系统的本质是分布在不同网络或计算机上的组件,彼此通过信息传递来协同工作的系统;而zookeeper正是一个分布式系统协调框架,在分布式系统中有广泛应用场景;

什么是zookeeper?
官方文档中这么解释zookeper,它是一个分布式协调框架,是apache hadoop的一个子项目,它主要用来解决分布式系统中经常遇到的数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式系统配置项管理等。

Zookeeper的应用场景:
1)分布式注册中心;
2)分布式配置中心;
3)分布式锁;
4)分布式队列;
5)集群选举;
6)分布式屏障;
7)发布/订阅;

单机zookeeper的安装:
1、压缩包的下载地址为:
https://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz;
2、需要java8的环境:java -version
3、解压压缩包 tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz,
cd apache-zookeeper-3.5.9-bin
赋值conf文件夹下的配置文件 cp zoo_sample.cfg zoo.cfg
4、新建一个data文件夹,用来存放一些数据,比如事务文件、快照数据文件等、日志文件等,mkdir data
编辑配置文件vi conf/zoo.cfg,修改里面的存放数据目录的配置项为data
dataDir=/usr/local/zookeeper/apache-zookeeper-3.5.9-bin/data
5、启动zookeeper:bin/zkServer.sh start
6、检查zk的状态:bin/zkServer.sh statuszookeeper的节点数据类型和特性详解_第1张图片
7、客户端连接server: bin/zkCli.sh -server 192.168.244.132:2181

查看所有命令:
zookeeper的节点数据类型和特性详解_第2张图片

Zookeeper的核心概念:
我们暂时可以理解zookeeper是一个基于内存的存储少量数据的数据库,主要有两个核心概念:文件系统数据结构 监听通知机制

文件系统的数据结构:我们平常使用的文件夹和文件,一个文件加下可以放一个数据多个子文件夹
zookeeper的节点数据类型和特性详解_第3张图片
每个子目录项都能被称作znode(目录节点),和文件系统类似,我们能自由的增加和删除znode;

有6种类型的znode:
1、PERSISTENT-持久化目录节点
客户端与zookeeper断开连接后,该节点仍然存在,只要不手动删除该节点,它将永远村存在;
2、PERSISTENT_SEQUENTIAL-持久化顺序编号目录节点
客户端与zookeeper断开连接后,该节点仍然存在,只是zookeeper给这个节点进行顺序编号;
3、EPHEMERAL-临时目录节点
客户端与zookeeper断开连接后,该节点被删除;
4、EPHEMERAL_SEQUENTIAL-临时顺序编号节点
客户端与zookeeper断开连接后,该节点被删除,只是zookeeper给该目录节点进行名称进行顺序编号;
5、Container节点:
3.5.3版本新增,如果container节点下子节点都被删除,则container节点在未来会被zookeeper检查到并被自动清除,定时任务默认60s检查一次;
6、TTL节点
默认禁用,只能通过系统配置 zookeeper.extendedTypesEnabled=true 开启,不稳定;过了TTL指定的时间时会被删除;
zookeeper的节点数据类型和特性详解_第4张图片<

你可能感兴趣的:(java-zookeeper,zookeeper,java)