1. 程式人生 > >第4章 ZK基本特性與基於Linux的ZK客戶端命令列學習

第4章 ZK基本特性與基於Linux的ZK客戶端命令列學習

ZK基本特性與基於Linux的ZK客戶端命令列學習

4-1 zookeeper常用命令列操作

在這裡插入圖片描述
在這裡插入圖片描述
對於zookeeper來說,一個目錄就是一個節點;


  • ls
    在這裡插入圖片描述
  • ls2 和stat;
    ls2就相當於ls和stat整合在一起的一個命令
    在這裡插入圖片描述
  • get命令:
    在這裡插入圖片描述

在這裡插入圖片描述
在這裡插入圖片描述


4-2 session的基本原理與create命令的使用

在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


建立臨時節點:
在這裡插入圖片描述


在這裡插入圖片描述


如果我們想要刪除臨時節點的話,那麼我們可以關閉客戶端,斷開了之後,session失效,心跳收不到:
我們ctrl+c斷開連線:
在這裡插入圖片描述


在這裡插入圖片描述
過一會,我們再重新進去,發現這個時候,臨時節點已經沒有了:
在這裡插入圖片描述
這個就是心跳機制和session超時;我們要很好的區分它;


我們再來看看順序節點:
在這裡插入圖片描述

4-3 set與delete命令的使用

在這裡插入圖片描述


在這裡插入圖片描述


我們再進行獲取一下,發現這個時候,值已經改變了:
在這裡插入圖片描述


set後面加上一個版本號,這個版本號一定是最新的版本號的時候,才能被更新:這個就是一個常見的樂觀鎖的使用方式
在這裡插入圖片描述


在這裡插入圖片描述
我們在修改和刪除的時候,最好還是要加上版本號來進行操作,因為這樣的話,可以做到一個樂觀鎖的效果;


4-4 zk特性 – 理解watcher機制

在這裡插入圖片描述


在這裡插入圖片描述


4-5 父節點watcher事件

在這裡插入圖片描述


在這裡插入圖片描述


這麼幾個會有watcher:
在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


先使用get設定一個watch事件,然後在set設值的時候,就是會觸發這個事件:
在這裡插入圖片描述


在這裡插入圖片描述
上面的這些事件也是跟父節點掛鉤的;

4-6 子節點watcher事件

在這裡插入圖片描述


這個時候,刪除也就可以觸發watch事件了:
在這裡插入圖片描述


set子節點的話是不會觸發watch事件:這個時候,就要把子節點當作是父節點來做:
在這裡插入圖片描述


這個是需要注意的:在修改的時候,必須要把子節點當作是父節點那樣去操作,去設定watch事件,這樣的話,在執行修改的時候才會去觸發對應的事件:
在這裡插入圖片描述


4-7 watcher常用使用場景

當作觸發器來使用:
在這裡插入圖片描述


4-8 許可權acl詳解,acl的構成-scheme與id

在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


4-9 acl的構成-permissions

在這裡插入圖片描述

4-10 acl命令列world講解

在這裡插入圖片描述


在這裡插入圖片描述
如果我們想要測試一下,那我們就必須要再建立一個子節點,然後再看看能不能進行刪除:這個時候,就是沒有許可權進行刪除:
在這裡插入圖片描述
其他的操作也是一樣操作的;

4-11 acl命令列auth講解

在這裡插入圖片描述


在這裡插入圖片描述


我們要先給註冊一個使用者,然後才能去使用:
在這裡插入圖片描述


存到資料庫裡面是通過密問的形式去儲存的:
在這裡插入圖片描述


我們先把這個密碼記下來,一會是要用到的:

Jz5tcvMZXTKQR6YnK3QK2z+9tq0=


當我們使用addauth digest ghl:ghl 命令來新增使用者,那麼接下來的操作都是在這個使用者下面來進行操作的, 預設就是按照第一個使用者來進行操作的:
在這裡插入圖片描述

4-12 acl命令列digest講解

我們先退出當前的客戶端來退出當前的使用者;
在這裡插入圖片描述


在這裡插入圖片描述


因為沒有這個異常,我們對其進行修改就是會出現異常:
在這裡插入圖片描述

4-13 acl命令列ip講解

在這裡插入圖片描述


在這裡插入圖片描述

4-14 acl之super超級管理員

在這裡插入圖片描述


在這裡插入圖片描述


我們也可以看一下原始碼:
在這裡插入圖片描述
修改了檔案之後,我們一定重啟才能生效;
在這裡插入圖片描述


4-15 acl的常用使用場景

在這裡插入圖片描述


4-16 zk四字命令 上

在這裡插入圖片描述


在這裡插入圖片描述


在這裡插入圖片描述


我們檢視Zookeeper官方文件裡面的四字命令
在這裡插入圖片描述


在這裡插入圖片描述


4-17 zk四字命令 下

在這裡插入圖片描述


在這裡插入圖片描述