zookeper基本信息
特性:
一致性:数据一致性,数据按照顺序分批入库
原子性:事务要么成功,要么失败,不会局部化
单一视图:客户端连接集群中任一zk节点,数据都是一致的
可靠性:每次对zk的操作都会保存到服务端
实时性:客户端可以读取到zk服务端的最新数据
<使用FileZilla上传文件到linux服务器,并操作数据库>
将官网下载好的zookpeer包解压到/user/local目录下
zookpeer目录结构:
bin:主要的运行命令
conf:存放配置文件,要修改zk.cfg:zoo_simple.cfg
contrib:附加功能
dist-maven:mvn编译后的目录
docs:文档
lib:依赖的jar包
recipes:案例demo代码
zoo.cfg配置:
tikeTime:计算时间单元,比如session超时:N*tikeTime
initLimit:用于集群,允许从节点并且同步到master节点的初始化连接时间,以tikeTime的倍数来表示
synvLimit:用于集群,master主节点与从节点发送消息,请求和应答的时间长度。
dataDir:必须配置,存储数据的目录
dataLogDir:如果不配置,回合dataDir共用
clientProt:连接服务器的端口号,默认2181
具体配置:
tikeTime=2000
initLimit=10
synvLimit=5
dataDir=/user/local/zookeper/dataDir
dataLogDir=/user/local/zookeper/dataLogDir
clientProt=2181
zookpeer的数据模型:
zookpeer的数据模型可以理解为linux操作系统目录模型,每个节点都成为znode,可以有子节点,也可以有数据。
每个zk节点分为临时节点和永久节点,临时节点会在客户端断开后消失。
每个zk节点有版本号(版本号是累加的),通过命令行显示节点数据
每个节点发生变化,版本号会累加(乐观锁)
删除/修改过时节点,版本号不匹配会报错
每个zk节点存储的数据不宜过大,几kb即可
zk节点可以设置acl(权限控制列表),可通过权限限制用户访问。
zookper数据模型的基本操作:
客户端连接
查看node结构
关闭客户端连接
启动bin目录的服务端 zkServer.sh:./zkServer.sh start
启动客户端: ./zkCli.sh
会出现: [zk: localhost:2181(CONNECTED) 0]
通过help获取命令列表:[zk: localhost:2181(CONNECTED) 0] help
通过ls查看目录列表:[zk: localhost:2181(CONNECTED) 1] ls /
[zookpper]
[zk: localhost:2181(CONNECTED) 2] ls /zookpper
[quota]
原文:https://www.cnblogs.com/zxlsblog/p/11378360.html