客户端命令
查看节点 ls /
创建节点 create /节点名 数据...
修改节点 set /节点名 数据...
删除节点 delete /节点名
获取节点上的数据 get /节点名
我们可以到 zk 目录下的 bin 下 执行 ./zkCli.sh 启动客户端,然后我们就可以 客户端命令操作节点了,创建完节点我们到另外一个机器上启动客户端 我们发现我们创建的节点这台服务器也有,数据也一样,说明 zk集群可以保证 一致性。
虽然 “只” 有leader可以执行 写,但是你在可以在follower里写,
他会转发给leader,
leader这时会生成一个zxid【如果多个请求 依次排序】唯一的、全局的、顺序的,这个zxid是严格保证顺序的,然后将这个写的操作发送给每一个机器上,而且都要回复leader收到了,但是只要有半数的follower机器回复收到了,所有的机器就可以进行commit了,其实并不是只有leader可以执行commit 其他的机器也可以,follower只是需要leader转发 “ 数据 ” 给他们 他们才commit,只不过follow的commit的数据 是leader同步过来的,这就是zk保持数据一致性 的根本,一台写 数据 同步到所有的follower follower再将数据commit。
然后同步到每一台机器上
先入门再深入,有什么建议请提出来,或者有想了解的请指出,共同进步,谢谢。张学伟:17625089935(微信)