項目4 Zookeeper分布式協(xié)調(diào)服務(wù)_第1頁
項目4 Zookeeper分布式協(xié)調(diào)服務(wù)_第2頁
項目4 Zookeeper分布式協(xié)調(diào)服務(wù)_第3頁
項目4 Zookeeper分布式協(xié)調(diào)服務(wù)_第4頁
項目4 Zookeeper分布式協(xié)調(diào)服務(wù)_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

Hadoop大數(shù)據(jù)技術(shù)——Zookeeper分布式協(xié)調(diào)服務(wù)湖南軟件職業(yè)技術(shù)大學(xué)Zookeeper架構(gòu)設(shè)計與工作原理Zookeeper是什么定義:zookeeper一個分布式的開源的協(xié)調(diào)服務(wù)框架,服務(wù)于分布式應(yīng)用。它暴露了一系列的原語操作服務(wù),因此分布式應(yīng)用能夠基于這些服務(wù),構(gòu)建出更高級別的服務(wù),比如同步,配置管理,分組和命名服務(wù)。zookeeper設(shè)計上易于編碼,數(shù)據(jù)模型構(gòu)建在我們熟悉的樹形結(jié)構(gòu)目錄風(fēng)格的文件系統(tǒng)中。zookeeper運行在Java中,同時支持Java和C語言。湖南軟件職業(yè)技術(shù)大學(xué)Zookeeper的特點最終一致性客戶端不論連接到哪個Server,展示給它的都是同一個視圖,這是Zookeeper最重要的特點??煽啃訸ookeeper具有簡單、健壯、良好的性能。如果一條消息被一臺服務(wù)器接收,那么它將被所有的服務(wù)器接收。實時性Zookeeper保證客戶端將在一個時間間隔范圍內(nèi),獲得服務(wù)器的更新信息或者服務(wù)器失效的信息。但由于網(wǎng)絡(luò)延時等原因,Zookeeper不能保證兩個客戶端能同時得到剛更新的數(shù)據(jù),如果需要最新數(shù)據(jù),應(yīng)該在讀數(shù)據(jù)之前調(diào)用sync()接口。等待無關(guān)(wait-free)慢的或者失效的客戶端不得干預(yù)快速的客戶端的請求,這就使得每個客戶端都能有效地等待。湖南軟件職業(yè)技術(shù)大學(xué)Zookeeper的特點原子性對Zookeeper的更新操作要么成功,要么失敗,沒有中間狀態(tài)。順序性它包括全局有序和偏序兩種。全局有序是針對服務(wù)器端,例如,在一臺服務(wù)器上,消息A在消息B前發(fā)布,那么所有服務(wù)器上的消息A都將在消息B前被發(fā)布。偏序是針對客戶端,例如,在同一個客戶端中,消息B在消息A后發(fā)布,那么執(zhí)行的順序必將是先執(zhí)行消息A然后在是消息B。所有的更新操作都有嚴(yán)格的偏序關(guān)系,更新操作都是串行執(zhí)行的,這一點是保證ZooKeeper功能正確性的關(guān)鍵。湖南軟件職業(yè)技術(shù)大學(xué)Zookeeper的基本架構(gòu)與工作原理Zookeeper服務(wù)自身組成一個集群(2n+1個服務(wù)節(jié)點最多允許n個失效)。Zookeeper服務(wù)有兩個角色:一個是主節(jié)點(Leader),負(fù)責(zé)投票的發(fā)起和決議,更新系統(tǒng)狀態(tài);另一種是從節(jié)點(Follower),用于接收客戶端請求并向客戶端返回結(jié)果,在選主過程(即選擇主節(jié)點的過程)中參與投票。主節(jié)點失效后,會在從節(jié)點中重新選舉新的主節(jié)點。湖南軟件職業(yè)技術(shù)大學(xué)Zookeeper數(shù)據(jù)模型zookeeper的數(shù)據(jù)結(jié)構(gòu)與linux文件系統(tǒng)很類似,與Linux中的文件系統(tǒng)路徑不同,Zookeeper中的路徑必須是絕對路徑,而且每條路徑只有唯一的一種表示方式(/app1/p_3)。湖南軟件職業(yè)技術(shù)大學(xué)Zookeeper數(shù)據(jù)模型Znode節(jié)點特性臨時節(jié)點znode節(jié)點有兩種:臨時節(jié)點和持久節(jié)點。Znode的類型在創(chuàng)建時就確定,之后不能修改。當(dāng)創(chuàng)建臨時節(jié)點的客戶端會話結(jié)束時,Zookeeper會將該臨時節(jié)點刪除。而持久節(jié)點不依賴與客戶端會話,只有當(dāng)客戶端明確要刪除該持久節(jié)點時才會被真正刪除。臨時節(jié)點不可以有子節(jié)點,即使是短暫的子節(jié)點。順序節(jié)點順序節(jié)點是指名稱中包含Zookeeper指定順序號的znode。如果在創(chuàng)建znode的時候設(shè)置了順序標(biāo)識,那么該znode名稱之后就會附加一個值,這個值是由一個單調(diào)遞增的計數(shù)器所添加的,由父節(jié)點維護(hù)。湖南軟件職業(yè)技術(shù)大學(xué)Zookeeper數(shù)據(jù)模型觀察機制客戶端可以在znode上設(shè)置watcher,當(dāng)節(jié)點狀態(tài)發(fā)生改變時將會觸發(fā)watcher所對應(yīng)的操作。當(dāng)watcher被觸發(fā)時,ZooKeeper將會向客戶端發(fā)送且僅發(fā)送一條通知,因為watcher只能被觸發(fā)一次,這樣可以減少網(wǎng)絡(luò)流量。為了能夠多次收到

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論