日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網營銷解決方案
Zookeeper如何讀取舊版本數據庫?(zookeeper讀舊數據庫)

Zookeeper 是一種開源的分布式協(xié)同服務,它可以幫助我們協(xié)調多個服務器之間的數據一致性,是分布式系統(tǒng)中十分重要的基礎設施。在實際的使用中,我們可能會遇到需要讀取舊版本的數據庫的情況,那么,Zookeeper 如何讀取舊版本的數據庫呢?

我們需要了解一下 Zookeeper 的數據模型。在 Zookeeper 中,數據模型類似于一個樹結構,每個節(jié)點都可以存儲一個小的數據量。Zookeeper 的版本號是用來進行版本控制的,每個節(jié)點可以擁有多個版本。當一個節(jié)點的數據被更新時,它的版本號也會隨之遞增。每個節(jié)點的數據只會在節(jié)點存在的情況下才會被存儲,節(jié)點刪除后,其下的數據也會被刪除。

如果我們想要讀取 Zookeeper 的舊版本數據庫,我們可以使用 Zookeeper 的版本控制機制。Zookeeper 的版本控制機制可以幫助我們記錄每個節(jié)點最近一次的更新,也可以幫助我們訪問之前的版本。Zookeeper 提供了一些 API,可以幫助我們讀取舊版本的節(jié)點數據。

我們需要使用 Zookeeper 的 getChildren() 方法來獲取指定節(jié)點的子節(jié)點列表。getChildren() 方法的第二個參數可以指定是否要監(jiān)聽節(jié)點的變化,在這里我們不需要監(jiān)聽節(jié)點的變化,將第二個參數設置為 false 即可。

接下來,我們可以使用 Zookeeper 的 getData() 方法來獲取指定節(jié)點的數據。getData() 方法需要傳遞兩個參數,之一個參數是節(jié)點的路徑,第二個參數是一個 boolean 值,用于指定是否要獲取節(jié)點的所有版本。如果我們設置這個參數為 true,Zookeeper 將返回給定節(jié)點的所有版本數據,否則只會返回最新版本的數據。

當我們成功獲取了指定節(jié)點的歷史版本數據后,我們就可以使用這些數據進行后續(xù)的操作了。如果我們需要將這些歷史數據重新寫入 Zookeeper,則可以使用 Zookeeper 的 setData() 方法來更新節(jié)點數據。setData() 方法需要傳遞三個參數,之一個參數是節(jié)點的路徑,第二個參數是新的數據,第三個參數是版本號。我們可以使用從 Zookeeper 的歷史數據中獲取到的最新版本號來更新節(jié)點數據,這樣就可以將舊版本數據重新寫入到 Zookeeper 中了。

一下,Zookeeper 如何讀取舊版本的數據庫?我們可以使用 Zookeeper 的版本控制機制來讀取舊版本的節(jié)點數據,并使用 Zookeeper 的 setData() 方法將歷史數據重新寫入到 Zookeeper 中。這種方法需要熟悉 Zookeeper 的相關 API,需要一定的技術水平和經驗,但是對于需要恢復舊版本數據的情況來說,是一個非常有用的解決方案。

成都網站建設公司-創(chuàng)新互聯(lián)為您提供網站建設、網站制作、網頁設計及定制高端網站建設服務!

通過筆記本訪問別處的數據庫時,zookeeper安裝在哪

ZooKeeper 服務器包含在單個 JAR 文件中,安裝此服務需要用戶創(chuàng)建一個配置文檔,并對其進行設置。我們在 ZooKeeper-*.*.* 目錄(我們以當前 ZooKeeper 的最新版 3.3.1 為例,故此下面的“ ZooKeeper-*.*.* ”都將寫為“ ZooKeeper-3.3.1” )的 conf 文件夾下創(chuàng)建一個 zoo.cfg 文件,它包含如下的內容:

tickTime=2023

dataDir=/var/zookeeper

clientPort=2181

你起碼要說訪問什么數據庫吧

Zookeeper選主過程,理論和源碼結合,看這一篇足夠了

【共4239字,閱讀需要15分鐘】

Zookeeper作為Dubbo生態(tài)的默認注冊中心,得到了非常的普遍的應用,雖然后來阿里又出了nacos,但是不可否認的是ZK仍然是一款非常優(yōu)秀的開源產品,非常優(yōu)秀的注冊中心備選方案。

ZK有很多特性,本篇文章主要介紹ZK的選主過程(后宮佳麗三千,我就獨寵你一人)

要說選主的過程,我們首先得了解ZK到底有哪些節(jié)點,這些節(jié)點充當得角色是什么?

ZK本身得節(jié)點主要分為三類:

Leader:主要是負責數據的寫入,如果超過半數同意,那么就廣播進行寫入;

Follower:主要負責查詢請求并將寫入請求發(fā)送給leader,參與選舉和寫入投票;

Observe:也是負責查詢請求并將寫入請求發(fā)送給leader,不參加投票,只被動接收結果

獲取半數投票以上的節(jié)點成為leader節(jié)點。

萬事萬物都有一個準則,好的比較壞的,壞的比較更壞的,世上本沒有痛苦,痛苦都是自己尋找的結果,海燕你可長點心吧,哎呀跑偏了。

ZK比較的時候有三個指標或者三個維度:

(1)任期

(2)事務ID(ZK中的事務ID)

(3)節(jié)點編號(集群中每個節(jié)點的編號)

根據以上三個指標就可以說出最終的結論了:選擇任期大的,任期一樣選擇事務ID大的,前兩個都一樣,選擇節(jié)點編號大的。

就這么簡單?是的。規(guī)則就是這么簡單,但是源碼還是有那么一丟丟的繞。

源碼看著相對比較枯燥,但是作為一個手藝人,怎么能不去了解怎么做的呢,我們先來梳理一下代碼的流程,方便更好的看第四部分內容。

節(jié)點先投自己一票,然后進行廣播

節(jié)點內部循環(huán)進行消息接收

收到消息后

如果消明含息為空,就進行重新發(fā)送消息或者建立連接

如果消息不為空,且消息接收者和投票的leader都是合法節(jié)點就進行下邊步驟。

如果節(jié)點為looking節(jié)點

根據當前節(jié)點的投票和接收到的投票進行比較來決定是否需要再次發(fā)送投票并且記錄投票的結果

每次都判斷記錄的票數,如果過半就進行節(jié)點狀態(tài)的設置

選主的邏輯是在lookForLeader開始的,像金字塔的之一塊磚一樣,我們先看ZK選主的之一塊磚lookForLeader,之一次看源碼得時候一定要把握主線,忽略從線,等主線完全理清楚了之后才去處理從線,要不會陷入迷宮之中。

下邊就是主要的投票代碼,看里邊的注釋:

更新投票或者投票的方法為:

發(fā)送通知的方法為:

待到山花爛漫時,她在叢中笑,消息都已經發(fā)完了,肯定就到了接收到選票的時候應該怎么操作了,接收選票的代碼也是在lookForLeader中:

接上代碼繼續(xù)討論,校驗發(fā)送投票節(jié)點的狀態(tài),我們從本文的咐族之一章節(jié)知道Observe節(jié)點是不參與投票的,只是轉發(fā)寫請求和被動接收數據,負責查詢請求,所以從代碼中我們也可以看出來:

當發(fā)送投票的節(jié)點狀態(tài)是FOLLOWING和LEADING時,代表發(fā)送節(jié)點已經選舉完成,所以處理方法的邏輯衡槐弊都是一樣滴,這部分限于篇幅太長,暫時就不深入討論了,感興趣的朋友可以私信我或者加我微信號M_P_E_D進行交流和溝通。

終于到重頭戲了,咱們看看LOOKING狀態(tài)時的代碼:

我們先把totalOrderPredicate方法放前邊,這個其實就是選舉leader的規(guī)則的實現(xiàn)。

道阻且長,行則將至,行而不輟,未來可期,加油。

zookeeper 讀舊數據庫的介紹就聊到這里吧,感謝你花時間閱讀本站內容,更多關于zookeeper 讀舊數據庫,Zookeeper 如何讀取舊版本數據庫?,通過筆記本訪問別處的數據庫時,zookeeper安裝在哪,Zookeeper選主過程,理論和源碼結合,看這一篇足夠了的信息別忘了在本站進行查找喔。

四川成都云服務器租用托管【創(chuàng)新互聯(lián)】提供各地服務器租用,電信服務器托管、移動服務器托管、聯(lián)通服務器托管,云服務器虛擬主機租用。成都機房托管咨詢:13518219792
創(chuàng)新互聯(lián)(www.cdcxhl.com)擁有10多年的服務器租用、服務器托管、云服務器、虛擬主機、網站系統(tǒng)開發(fā)經驗、開啟建站+互聯(lián)網銷售服務,與企業(yè)客戶共同成長,共創(chuàng)價值。


本文題目:Zookeeper如何讀取舊版本數據庫?(zookeeper讀舊數據庫)
本文URL:http://www.dlmjj.cn/article/dpsidej.html