【Zookeeper02】ZK的作用以及使用
上一篇介紹了ZK的安裝以及集群的搭建,這只能算是個(gè)軟件安裝過(guò)程,具體是做什么的、怎么用也沒(méi)有做解釋,這一篇中博主就自己的私人理解簡(jiǎn)單寫一下:
1、是什么:
a、Zookeeper是一個(gè)分布式協(xié)調(diào)服務(wù),是一個(gè)中間件。
b、能提供主從協(xié)調(diào)、服務(wù)器節(jié)點(diǎn)控制、統(tǒng)一配置管理、分布式共享鎖、統(tǒng)一名稱服務(wù)等功能,比較有名的是大數(shù)據(jù)以及dubbo中服務(wù)的注冊(cè)以及發(fā)現(xiàn)。
c、本質(zhì)上只是管理、讀取用戶提交的數(shù)據(jù),并為數(shù)據(jù)提供監(jiān)聽(tīng)服務(wù)。
2、應(yīng)用場(chǎng)景:
大數(shù)據(jù)
服務(wù)注冊(cè)與發(fā)現(xiàn)
等等
3、一些概念:
a、 ZK的角色:
1、leader(主節(jié)點(diǎn)) ,不是固定的,啟動(dòng)后根據(jù)選舉算法選出
2、follower(從節(jié)點(diǎn))
b、ZK數(shù)據(jù)結(jié)構(gòu)
1、一顆與目錄結(jié)構(gòu)類似的樹(shù),根節(jié)點(diǎn)為"/",子節(jié)點(diǎn)為root下的 “/child1”、“/child2”等
2、樹(shù)的每個(gè)節(jié)點(diǎn)為zNode,具有唯一的路徑標(biāo)識(shí)
3、每個(gè)zNode節(jié)點(diǎn)可以包含數(shù)據(jù)和子節(jié)點(diǎn)
4、通俗來(lái)說(shuō),key就是目錄結(jié)構(gòu)的寫法,以此也可以表達(dá)父子關(guān)系
5、節(jié)點(diǎn)分為短暫節(jié)點(diǎn)(斷開(kāi)連接刪除)與永久節(jié)點(diǎn)(斷開(kāi)連接不刪除)
create -e /root
4、zkcli的簡(jiǎn)單使用
a、安裝以及啟動(dòng) 點(diǎn)擊打開(kāi)鏈接
b、控制臺(tái)客戶端
打開(kāi)客戶端: root@ubuntu15:/usr/local/zookeeper-3.4.10/bin# ./zkCli.sh
查看命令:
[zk: localhost:2181(CONNECTED) 0] help
ZooKeeper -server host:port cmd args
stat path [watch]
set path data [version]
ls path [watch]
delquota [-n|-b] path
ls2 path [watch]
setAcl path acl
setquota -n|-b val path
history
redo cmdno
printwatches on|off
delete path [version]
sync path
listquota path
rmr path
get path [watch]
create [-s] [-e] path data acl
addauth scheme auth
quit
getAcl path
close
connect host:port
[zk: localhost:2181(CONNECTED) 1]
切換節(jié)點(diǎn):
[zk: localhost:2181(CONNECTED) 1] connect 192.168.0.16:2181
[zk: 192.168.0.16:2181(CONNECTED) 2]
創(chuàng)建與讀取數(shù)據(jù):
[zk: 192.168.0.16:2181(CONNECTED) 2] ls
[zk: 192.168.0.16:2181(CONNECTED) 3] ls /
[zookeeper]
[zk: 192.168.0.16:2181(CONNECTED) 4] create /child1 thisischild
Created /child1
[zk: 192.168.0.16:2181(CONNECTED) 5] ls /
[zookeeper, child1]
[zk: 192.168.0.16:2181(CONNECTED) 6] create /child1/grandSon this is grandson
Created /child1/grandSon
[zk: 192.168.0.16:2181(CONNECTED) 7] ls child1
Command failed: java.lang.IllegalArgumentException: Path must start with / character
[zk: 192.168.0.16:2181(CONNECTED) 8] ls /child1
[grandSon]
[zk: 192.168.0.16:2181(CONNECTED) 9] get /child1
thisischild
cZxid = 0x100000006
ctime = Thu Jul 05 00:30:41 PDT 2018
mZxid = 0x100000006
mtime = Thu Jul 05 00:30:41 PDT 2018
pZxid = 0x100000007
cversion = 1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 4
numChildren = 1
5、java驅(qū)動(dòng)提供的API
總結(jié)
以上是生活随笔為你收集整理的【Zookeeper02】ZK的作用以及使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: wine实用经验教程
- 下一篇: aop (权限控制之功能权限)