zookeeper 基础
zookeeper
简介
- ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
- ZooKeeper和redis 一样,数据也是存在内存中。
- 如图zookeeper 和redis 一样,zookeeper 拥有一个主节点和n个从节点,所有集群中的数据量是一致的,查询可以从从节点拿,增删改统一从主节点中操作。
安装
docker run -d --name zookeeper -p 2181:2181 zookeeper
概念
- zookeeper每个节点只支持1m
- 不要把zk 当作数据库使用,他是用来做分布式协调使用的。
- zookeeper 也是采用的最终一致性的。
- zookeeper 的可靠性在于其快速恢复的特性,虽然他挂了,但是他能快速选举出一个主节点
- zookeeper 是读写分离的
zookeeper可以做哪些事
- 统一配置管理 <- 1m空间
- 分组管理 <- path结构
- 统一命名 sequential
- 同步 <- 临时节点 (分布式锁)
zookeeper 和 redis 分布式锁区别
- zookeeper建立锁是一个session ,如果客户端挂了,zookeeper上的锁会自动消失,不需要业务服务吃这段逻辑。