[toc]

三个作用

  1. 配置中心
  2. 分布式锁
  3. 集群管理

果然那句话说得好: 如果一层解决不了, 那就给他加一层, 加一层不行, 就加两层.

前面reids集群篇中, 我们在本地建立集群, 直接使用不同的端口, 启动多个进程, 然后配置成集群的时候使用的建立多个配置文件, 并且通过”include”共享一个总的配置文件, 它们只需要写一点不同的参数即可, 但是如果我们有多台服务器, 想要达到相同的效果, 就需要zookeeper来管理大家相同的参数, 所以叫配置中心.

安装

  1. 下载压缩包并解压, 务必下载最新&稳定

http://zookeeper.apache.org/releases.html

都用zookeeper了, 不可能不会Linux吧, 不赘述了.

我第一次下载了3.7.0 最新版, 不是最新稳定版, 结果javaAPI没有更新到最新, 我人都傻了, 还好, 我的zookeeper没有任何配置, 删了旧的文件夹, 下个新的就完事了.

启动

进入zookeeper目录下:
./bin/zkServer.sh start

查看状态:
./bin/zkServer.sh status

数据模型

树形目录服务, 拥有一个层次目录, 每个节点被称为Znode, 每个节点上都会保存自己的数据和节点信息.

节点可以有子节点, 同时也允许少量(1MB)数据存储在该节点之下.

节点可以分为四种:

  1. persistent 持久化节点
  2. ephemeral 临时节点: -e (客户端关了就没了)
  3. persistent_sequential 持久化顺序节点: -s
  4. ephemeral_sequential 临时顺序节点 -es

fSwNLt.png