中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

【分布式協調zookeeper】基礎篇

發布時間:2020-07-20 00:31:39 來源:網絡 閱讀:1442 作者:次渠龍哥 欄目:建站服務器

一、zookeeper介紹

 它是一個為分布式應用提供一致性服務的軟件,提供的功能包括:配置維護、名字服務、分布式同步、組服務等
zookeeper做了什么?

1.命名服務 2.配置管理 3.集群管理 4.分布式鎖 5.隊列管理

二、zookeeper架構的架構模型

zookeeper的兩種模型的混合式:

Client-Server模型:用于對分布式協調系統中的對象提供協調服務;

Peer-to-Peer模型:用于在zookeeper集群內交互數據;

這種混合的體系結構,讓zookeeper既保持客戶端的簡單化,又能夠在集群內部保持一個良好的高可用機制;

zookeeper的兩種運行模式:standalone 和 quorum

standalone模式:

代表zookeeper由一個單一節點構成,它的數據并不需要再多個節點之間復制;

quorum模式:

該模式主要多用于生產環境,zookeeper有多個節點后構成一個集群,通過zookeeper的Leader選舉、集群節點間的數據同步有關;

當才用quorum模式時,它的基本運轉流程是:

① 選舉Leader

② 同步數據

③ 選舉Leader過程中算法有很多,但要達到的選舉標準是一致的;

④ Leader要具有最高的zxid

⑤ 集群中大多數的機器得到相應并follow選出的Leader

說明:

對于用戶的讀操作,zookeeper集群中的所有節點都可接收處理;
對于用戶的寫操作,zookeeper將它作為事務進行處理,并只有Leader才能發起事務;在每次提交之前,修改的數據要在集群中同步;

三、數據模型

zookeeper是通過集中性的C/S架構服務于客戶端的,采用的是點對點的Pair-Pair架構在各節點間進行同步數據,zookeeper內部的數據結構和數據類型采用了精簡的方式提供給用戶使用

在數據結構上,zookeeper采用的是樹形結構;樹種的節點被稱為znode,在整棵樹種有著清晰的父子層次關系;

zookeeper對數據的修改都當做一次事務來看待,每次的事務動作都是原子操作,并分配一個唯一的zxid(zookeeper transacation id);

在每一個znode中都記錄了與之相關的zxid;znode除了有效載荷數據,還包括如下屬性:

czxid:引發當前znode改變的zxid

mzxid:當前znode上一次修改前的zxid

ctime:對znode事務操作所花費的時間,單位是毫秒

mtime:操作上一次znode事務所花費的時間,單位是毫秒

version:關聯到zxid,znode自身版本屬性,當前znode修改的次數

cversion:znode子節點的修改次數

aversion:znode ACL(訪問列表)的修改測試

ephemeralOwner:記錄客戶端會話ID,如果是持久型znode 則為0

dataLength:znode數據字段的長度

numChildren:znode子節點的個數

1、持久型與短暫型的znode【對應于ephemeralOwner屬性】

znode在創建的時候可以指定模式,可以用不同的模式組合成需要的分布式場景功能;

一個znode節點可以是持久的(Persistent),也可以是短暫的(Ephemera);

區別:
持久型:

只有收到刪除命令后才能被刪除;

用于保存結構信息;

短暫型:

會在客戶端與服務端之間保存的會話中斷時自動刪除;

也能像持久型znode一樣被命令刪除;

客戶端與服務端之間一旦建立連接,則會有定期的心跳檢查以保證這個長連接的存活

2、序列znode

創建znode時會自動分配一個唯一的遞增的整數,這個正向序列可以作為路徑名稱的一部分;

例如:客戶端創建了一個序列znode為/woker/work-,則zookeeper會自動分配一個序列數,如果是當前znode下的第一個子節點則分配為1,路徑變為/worker/work-1;序列節點最大的作用就是生成唯一名稱節點,同時能夠提供節點間的創建次序信息

3、ACL【訪問列表】

zookeeper的ACL建立在認證與授權機制下,包含以下認證方式:

1. digest:通過用戶名/密碼對客戶端進行認證;
2. sasl: 支持客戶端通過Kerberos認證;
3. ip: 通過IP地址對客戶端進行認證;

在授權方面,ACL可以對znode的創建(子節點)、讀取、寫入、刪除及管理(設置ACL)進行控制


未完待續...

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宜丰县| 吴川市| 大方县| 固始县| 林周县| 禄丰县| 丹江口市| 大安市| 宿州市| 黄陵县| 淮滨县| 夏邑县| 汉沽区| 双辽市| 呼玛县| 怀化市| 平果县| 仲巴县| 大连市| 鸡东县| 无为县| 方山县| 徐州市| 彩票| 精河县| 吉木乃县| 黄骅市| 磐石市| 和平区| 宝兴县| 应城市| 潞城市| 中卫市| 武宁县| 新竹市| 麻城市| 民乐县| 濉溪县| 太白县| 台东县| 通河县|