1. 程式人生 > >ZooKeeper節點的增刪改查

ZooKeeper節點的增刪改查

ZooKeeper資料結構:

            

查詢指令:

    ls path:列出path下的檔案

[zk: 127.0.0.1:2181(CONNECTED) 4] ls /
[zookeeper]

    如上:列出根目錄節點下的所有檔案,目前就只有一個系統自帶的zookeeper節點

    stat path:檢視節點狀態

[zk: 127.0.0.1:2181(CONNECTED) 6] stat /zookeeper
cZxid = 0x0
ctime = Thu Jan 01 08:00:00 CST 1970
mZxid = 0x0
mtime = Thu Jan 01 08:00:00 CST 1970
pZxid = 0x0
cversion = -1
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 1

    解釋:

cZxid:建立節點時的事務id
pZxid:子節點列表最後一次被修改的事務id
cversion:節點版本號
dataCersion:資料版本號
aclVerson:acl許可權版本號

    get path:獲取指定節點的內容
    ls2 path:列出path節點的子節點及狀態資訊

建立指令:

    create [-s] [-e] path data acl

[zk: 127.0.0.1:2181(CONNECTED) 10] create /node_1 123
Created /node_1

如上:在根目錄建立了node_1節點,攜帶資料 123
使用 get /node_1 驗證是否新增節點及其資料成功
[zk: 127.0.0.1:2181(CONNECTED) 15] create -e /node_1/node_1_1 234
Created /node_1/node_1_1

建立了一個臨時節點(-e),並且攜帶資料234

    使用stat命令檢視這個新建的臨時節點

[zk: 127.0.0.1:2181(CONNECTED) 16] stat /node_1/node_1_1
cZxid = 0x200000003
ctime = Sat Aug 27 15:27:30 CST 2016
mZxid = 0x200000003
mtime = Sat Aug 27 15:27:30 CST 2016
pZxid = 0x200000003
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x156cacb918b0000
dataLength = 3
numChildren = 0

ephemeralOwner值不再是0,表示這個臨時節點的版本號,如果是永久節點則其值為 0x0

    通過使用-s引數,建立一個順序節點,我們雖然指定的節點名是node_1_1,但是實際上,名稱卻是 node_1_10000000001

[zk: 127.0.0.1:2181(CONNECTED) 1] create -s /node_1/node_1_1 234
Created /node_1/node_1_10000000001

    如果重複執行:

[zk: 127.0.0.1:2181(CONNECTED) 2] create -s /node_1/node_1_1 234
Created /node_1/node_1_10000000002

修改指令:

set path data [version]

[zk: 127.0.0.1:2181(CONNECTED) 14] set /node_1 998
cZxid = 0x200000002
ctime = Sat Aug 27 15:24:39 CST 2016
mZxid = 0x20000000a
mtime = Sat Aug 27 15:38:40 CST 2016
pZxid = 0x200000008
cversion = 5
dataVersion = 2
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 3
numChildren = 3

    如果我們多次修改,會發現  dataVersion ,也就是資料版本,在不停得發生變化(自增),如果我們在set的時候手動去指定了版本號,就必須和上一次查詢出來的結果一致,否則,就會報錯。這個可以用於我們在修改節點資料的時候,保證我們修改前資料沒被別人修改過。因為如果別人修改過了,我們這次修改是不會成功的。

刪除指令:

delete path [version]

    刪除指定節點資料,其version引數的作用於set指定一致

delete /node_1/node_1_10000000001

    整個節點全刪除

    注意:delete只能刪除不包含子節點的節點,如果要刪除的節點包含子節點,使用rmr命令

rmr /node_1

相關推薦

Springboot2(29)整合zookeeper刪改節點監聽、分散式讀寫鎖、分散式計數器

原始碼地址 springboot2教程系列 實現zookeeper節點的增刪改查、節點監聽、分散式讀寫鎖、分散式計數器 新增依賴 <properties> <project.build.sourceEncoding

html dom節點刪改

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> <s

java訪問zookeeper刪改

package com.yc.hadoop.zookeeper; import java.io.IOException; import java.util.List; import org.apache.zookeeper.CreateMode; import org.apache.zookeeper.Kee

JS DOM節點刪改 屬性設置

contain 百度首頁 fun classname dhtml -- 使用 dom val 一.節點操作 增 createElement(name)創建元素 appendChild();將元素添加 刪 獲得要刪除的元素 獲得它的父

Zookeeper JavaAPI對節點進行刪改(詳細步驟)

import java.io.IOException; import java.util.List; import org.apache.zookeeper.CreateMode; import org.apache.zookeeper.KeeperException; import org.ap

ZooKeeper節點刪改

ZooKeeper資料結構:            查詢指令:    ls path:列出path下的檔案[zk: 127.0.0.1:2181(CONNECTED) 4] ls / [zookeeper]    如上:列出根目錄節點下的所有檔案,目前就只有一個系統自帶的zo

ZooKeeper客戶端 zkCli.sh 節點刪改

zkCli.sh 在 bin 目錄下的  zkCli.sh  就是ZooKeeper客戶端 ./zkCli.sh -timeout 5000  -server 127.0.0.1:2181   客戶端與ZooKeeper建立連結 timeout:超時時間,單位毫秒 r:只讀模式,當節點壞掉的時

HTML DOM節點刪改

自己 div text dom節點 定義 pos 就會 fcm .get 上篇博客中,我們已經初步接觸了DOM基礎,可是我們學習是為了可以更好地應用,今天我們就來看看DOM節點的增刪改查。 無論在哪裏,我們想要操作一個東西,總是應該先去獲得它。那麽

節點刪改

表示 簡單 mage ext outer call htm last javascrip 節點的增刪改查 @(js 高級教程(es5)) 本文不會詳細講解,只是簡單提及知識要點,詳細可以參考《dom高級編程》。 1. document.write document.wr

zookeeper curator學習(刪改)(1)

oid lis edge java catch clas 獲得 data on() 主要參考的是curator,github地址:https://github.com/apache/curator/tree/master/curator-examples。 zookeepe

使用Kazoo去刪改zookeeper

python zookeeper kazoo 增刪改查 監控 每一次新版本開發,都會有開發頻繁的要求查看以前版本裏zookeeper的內部配置,由於我公司規定zookeeper的密鑰是不能輕易給開發人員的,所以每次開發找過來運維就要停下手裏工作去幫忙看一下,這樣一來二去就搞得運維很煩。於是

Zookeeper刪改

錯誤 store reat 如果 session led initial port syn 1.下載Zookeeper http://mirrors.shu.edu.cn/apache/zookeeper/ 這裏我選擇Zookeeper 3.4.11版本 ZooKee

JavaScript - 屬性節點刪改

頁面原始碼 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head>

jquery 刪改dom節點

jquery 增刪改查dom節點 HTML DOM常見操作:   查詢節點,插入節點,刪除節點,複製節點,替換節點,包裹節點. 查詢節點 關於節點的查詢,是利用選擇器完成的.   在上一篇jQuery選擇器中已經介紹過了:http://www.cnblogs.com/mengdd

SSM+dubbo+zookeeper實現基本的刪改

前言 本文中使用的專案是由上一篇文章中的專案改造而來。具體來說,就是引入了dubbo和zookeeper,並將Controller層與service層dao層進行了拆分,使雙方通過service介面遠端呼叫的形式,再次實現了基本的增刪改查。 上一篇文章:http://www.cnblogs.com/han

C# 用Linq的方式實現對Xml檔案的基本操作(建立xml檔案、刪改xml檔案節點資訊)

1 private static void GetXmlNodeInforOld( string xmlPath) 2 { 3 try 4 { 5

SQL server + ASP.NET MVP + Jquery EasyUI實現樹形節點刪改

最近在做專案時遇到了這樣一個需求,就是做一個系統首頁左側選單的樹形節點的管理。專案後臺資料庫使用的是SQL server 2008,後端框架使用的是微軟的ASP.NET MVC5,前端框架使用的是Jqu

zookeeper刪改與監聽API

//監聽單節點內容 public class WatchDemo{ public static void main(String[] args) throws Exception { private String connectString="ip1:2181,ip2:2181,ip

java DOM 對xml檔案的操作【分別對節點節點屬性、節點內容刪改

最近研究xml檔案  但是書上僅僅是解析 自己有點不滿意 於是在“度娘谷哥”的幫助下蒐集了一些有關於DOM操作xml檔案的資料 並整理下來 也有0分的原始碼供大家下載 DOM是W3C組織推廣的一中操作xml檔案的方法,也是java原生態操作xml檔案的方法之一,DOM的優點

java 移動節點,排序號進行重新排序,以閉包形式實現ztree刪改操作,其中排序運用到此方法

package com.avic.custom.controller.ct; import java.util.HashMap; import java.util.Map; /** * 移動節點重新排序操作 * @author Administrator * */