成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

ZooKeeper學(xué)習(xí)

sevi_stuo / 1462人閱讀

摘要:臨時(shí)節(jié)點(diǎn)臨時(shí)節(jié)點(diǎn)的生命周期和會話保持一致。授權(quán)對象授權(quán)對象指的是權(quán)限賦予的用戶或一個(gè)指定實(shí)體。參與選舉的投票。狀態(tài)變更如果是服務(wù)器運(yùn)行期間進(jìn)行選舉,需要對非服務(wù)器進(jìn)行狀態(tài)變更為。接收投票接收來自其它服務(wù)器的投票判斷投票的有效性。

一.ZooKeeper是什么?

ZooKeeper是一個(gè)分布式協(xié)調(diào)服務(wù),目標(biāo)是將復(fù)雜容易出錯(cuò)的分布式一致性服務(wù)包裝起來,提供API接口給用戶使用。

ZooKeeper可以實(shí)現(xiàn)數(shù)據(jù)發(fā)布/訂閱,負(fù)載均衡,分布式鎖,分布式隊(duì)列,命名服務(wù),集群管理,Master管理,分布式協(xié)調(diào)/通知。

二.ZooKeeper的Zab(Zookeeper Automic Broadcast)協(xié)議。

包含兩種模式:
1.崩潰恢復(fù)
2.消息廣播

三.ZooKeeper的特性

1.數(shù)據(jù)節(jié)點(diǎn)--ZNode
ZNode是ZooKeeper的最小數(shù)據(jù)單元,每個(gè)ZNode都可以存儲數(shù)據(jù),同時(shí)還能掛載子節(jié)點(diǎn),因此構(gòu)成了一個(gè)層次化的命名空間,稱為樹。

ZNode三種類型:持久節(jié)點(diǎn),臨時(shí)節(jié)點(diǎn),順序節(jié)點(diǎn)。可以生成以下四種類型的節(jié)點(diǎn):

持久節(jié)點(diǎn):持久節(jié)點(diǎn)創(chuàng)建后就一直存在于ZooKeeper服務(wù)器上,直到有刪除操作主動(dòng)清除這個(gè)節(jié)點(diǎn)。

持久順序節(jié)點(diǎn):持久順序節(jié)點(diǎn)的特性和持久節(jié)點(diǎn)基本一致,額外的特性表現(xiàn)在順序性上。在ZooKeeper中,每個(gè)父節(jié)點(diǎn)都會為它的第一個(gè)子節(jié)點(diǎn)維護(hù)一份順序,用于記錄下每個(gè)子節(jié)點(diǎn)創(chuàng)建的先后順序。

臨時(shí)節(jié)點(diǎn):臨時(shí)節(jié)點(diǎn)的生命周期和會話保持一致。如果會話失效,臨時(shí)節(jié)點(diǎn)也就失效。不能在臨時(shí)節(jié)點(diǎn)上創(chuàng)建子節(jié)點(diǎn)。

臨時(shí)順序節(jié)點(diǎn):在臨時(shí)節(jié)點(diǎn)上添加了順序性。

2.Watcher通知機(jī)制
客戶端線程向服務(wù)器注冊一個(gè)Watcher,同時(shí)將這個(gè)Watcher存儲在客戶端的WatchManager中,服務(wù)器會觸發(fā)Watcher事件向客戶端發(fā)送通知,客戶端會從WatchManager中找到對應(yīng)的Watcher執(zhí)行邏輯回調(diào)。

3.ACL(Access Control List)
ZooKeeper的權(quán)限控制。包含三部分的內(nèi)容:
(1)權(quán)限模式

IP:IP模式通過IP地址粒度進(jìn)行權(quán)限控制。

Digest: 以類似“username:password”的形式的權(quán)限標(biāo)識進(jìn)行權(quán)限設(shè)置。

World:所有用戶都可以在不進(jìn)行任何權(quán)限校驗(yàn)的情況下操作ZooKeeper上的數(shù)據(jù)。

Super: 超級用戶。

(2)授權(quán)對象:ID
授權(quán)對象指的是權(quán)限賦予的用戶或一個(gè)指定實(shí)體。
(3)權(quán)限
指通過權(quán)限校驗(yàn)可以被允許執(zhí)行的操作,包括create,delete,read,write,admin。

4.服務(wù)器角色
(1)Leader:整個(gè)ZooKeeper集群工作機(jī)制中的核心,主要任務(wù):

事務(wù)請求的唯一調(diào)度和處理者,保證集群事務(wù)處理的順序性。

集群內(nèi)部各服務(wù)器的調(diào)度者。

(2)Follower:ZooKeeper集群狀態(tài)的跟隨者,主要任務(wù):

處理客戶端非事務(wù)的請求,轉(zhuǎn)發(fā)事務(wù)請求給Leader服務(wù)器。

參與事務(wù)的Proposal的投票。

參與Leader選舉的投票。

(3)Observer:觀察者
能處理非事務(wù)請求,將事務(wù)請求轉(zhuǎn)發(fā)給Leader服務(wù)器,但是不進(jìn)行事務(wù)Proposal的投票和Leader選舉的投票。通常用于在不影響集群事務(wù)處理能力的前提下提升集群的非事務(wù)處理能力。

5.leader選舉
進(jìn)行l(wèi)eader可以是服務(wù)器啟動(dòng)的時(shí)候或是服務(wù)器運(yùn)行的時(shí)候。

(1)狀態(tài)變更:如果是服務(wù)器運(yùn)行期間進(jìn)行l(wèi)eader選舉,需要對非Observer服務(wù)器進(jìn)行狀態(tài)變更為Looking。
(2)進(jìn)行投票:每臺服務(wù)器都會選舉自己作為leader,投票的內(nèi)容包括服務(wù)器的myid(ZooKeeper集群搭建的時(shí)候每個(gè)服務(wù)器的編號)和ZXID(ZooKeeper為每一個(gè)事務(wù)請求分配的唯一一個(gè)全局事務(wù)ID)。
(3)接收投票:接收來自其它服務(wù)器的投票,判斷投票的有效性。
(4)處理投票:需要將其他服務(wù)器的投票與自己的投票比較,比較規(guī)則如下:

先比較ZXID,ZXID比較大的服務(wù)器會優(yōu)先作為Leader。

ZXID相同的話,就比較myid,myid比較大的服務(wù)器作為Leader服務(wù)器。

(5)統(tǒng)計(jì)投票:每次投票后,服務(wù)器都會統(tǒng)計(jì)所有投票,判斷是否有過半的機(jī)器接收到相同的投票信息。
(6)改變服務(wù)器狀態(tài):如果是follower,就變更為Following,如果是leader,就變更為leading。

6.ZooKeeper的序列化協(xié)議:Jute

7.數(shù)據(jù)存儲
分為兩部分:內(nèi)存數(shù)據(jù)存儲和磁盤數(shù)據(jù)存儲。

參考資料:
《從Paxos到ZooKeeper分布式一致性原理與實(shí)踐》

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/71565.html

相關(guān)文章

  • Zookeeper學(xué)習(xí)系列【三】Zookeeper 集群架構(gòu)、讀寫機(jī)制以及一致性原理(ZAB協(xié)議)

    摘要:協(xié)議是為分布式協(xié)調(diào)服務(wù)專門設(shè)計(jì)的一種支持崩潰恢復(fù)的一致性協(xié)議,這個(gè)機(jī)制保證了各個(gè)之間的同步。選主是協(xié)議中最為重要和復(fù)雜的過程。以實(shí)際效果而言,分區(qū)相當(dāng)于對通信的時(shí)限要求。參考官方文檔阿里巴巴為什么不用做服務(wù)發(fā)現(xiàn)定理的含義阮一峰 前言 同學(xué)們,在上一章中,我們主要講了Zookeeper兩種啟動(dòng)模式以及具體如何搭建。本章內(nèi)容主要講的是集群相關(guān)的原理內(nèi)容,第一章可以當(dāng)做是Zookeeper原...

    Olivia 評論0 收藏0
  • Zookeeper學(xué)習(xí)系列【二】Zookeeper 集群章節(jié)之集群搭建

    摘要:本章內(nèi)容主要講的是集群搭建相關(guān)的知識。在集群模式下,最少需要三個(gè)節(jié)點(diǎn)。并且官方推薦你使用奇數(shù)數(shù)量的節(jié)點(diǎn)來組成集群。這個(gè)值必須是集群中唯一的。在確認(rèn)每臺服務(wù)器上的和文件修改創(chuàng)建之后,在三個(gè)節(jié)點(diǎn)上分別執(zhí)行命令,啟動(dòng)。 前言 同道們,好久不見,上一章中,我主要講了Zookeeper的一些基礎(chǔ)的知識點(diǎn)。數(shù)據(jù)模型 + 原語集 + Watches機(jī)制。本章內(nèi)容主要講的是集群搭建相關(guān)的知識。 本篇的...

    shixinzhang 評論0 收藏0
  • Zookeeper學(xué)習(xí)系列【一】 教會你Zookeeper的一些基礎(chǔ)概念

    摘要:具有不可分割性即原語的執(zhí)行必須是連續(xù)的,在執(zhí)行過程中不允許被中斷。提供服務(wù)主要就是通過數(shù)據(jù)結(jié)構(gòu)原語集機(jī)制達(dá)到的。子節(jié)點(diǎn)的版本號數(shù)據(jù)節(jié)點(diǎn)版本號版本號創(chuàng)建該節(jié)點(diǎn)的會話的。后位則為遞增序列。 前言 最近加入了部門的技術(shù)興趣小組,被分配了Zookeeper的研究任務(wù)。在研究過程當(dāng)中,發(fā)現(xiàn)Zookeeper由于其開源的特性和其卓越的性能特點(diǎn),在業(yè)界使用廣泛,有很多的應(yīng)用場景,而這些不同的應(yīng)用場景...

    DevWiki 評論0 收藏0
  • ZooKeeper學(xué)習(xí)筆記之掃盲

    摘要:可靠性一旦數(shù)據(jù)更新成功,將一直保持,直到新的更新。這是一種主動(dòng)的分布式數(shù)據(jù)結(jié)構(gòu),能夠在外部情況發(fā)生變化時(shí)候主動(dòng)修改數(shù)據(jù)項(xiàng)狀態(tài)的數(shù)據(jù)機(jī)構(gòu)。如果監(jiān)視節(jié)點(diǎn)狀態(tài)發(fā)生變化,則跳轉(zhuǎn)到第步,繼續(xù)進(jìn)行后續(xù)的操作,直到退出鎖競爭。 題外話:從字面上來看,ZooKeeper表示動(dòng)物園管理員,而Hadoop生態(tài)系統(tǒng)中,許多項(xiàng)目的Logo都采用了動(dòng)物,比如Hadoop采用了大象的形象,所以可以ZooKeepe...

    sarva 評論0 收藏0

發(fā)表評論

0條評論

最新活動(dòng)
閱讀需要支付1元查看
<