zookeeper 都有哪些使用場景?
成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都做網(wǎng)站、成都網(wǎng)站制作、華鎣網(wǎng)絡(luò)推廣、小程序定制開發(fā)、華鎣網(wǎng)絡(luò)營銷、華鎣企業(yè)策劃、華鎣品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們大的嘉獎;成都創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供華鎣建站搭建服務(wù),24小時服務(wù)熱線:18980820575,官方網(wǎng)址:www.cdcxhl.com
假設(shè)現(xiàn)在聊的話題是分布式系統(tǒng),面試官跟你聊完了 dubbo 相關(guān)的一些問題之后,已經(jīng)確認(rèn)你對分布式服務(wù)框架/RPC框架基本都有一些認(rèn)知了。
那么接下來他可能開始要跟你聊分布式相關(guān)的其它問題了,比如分布式鎖。
分布式鎖這個東西很常用,無論做 Java 系統(tǒng)開發(fā)或者分布式系統(tǒng),都可能會有一些場景會用到。而最常用的分布式鎖就是基于 zookeeper 來實現(xiàn)的。
說實話,問這個問題,一般就是看看你是否了解 zookeeper,因為 zookeeper 是分布式系統(tǒng)中很常見的一個基礎(chǔ)系統(tǒng)。
并且面試官問的話,常問的就是 zookeeper 的使用場景是什么?看你知道不知道一些基本的使用場景。當(dāng)然其實 zookeeper 挖深了自然是可以問的很深很深的。
大致來說,zookeeper 的使用場景如下,我就舉下面幾個簡單的例子,大家能說這幾個就OK了:
分布式協(xié)調(diào)
分布式鎖
元數(shù)據(jù)/配置信息管理
HA高可用性
這個其實是 zookeeper 很經(jīng)典的一個用法,簡單來說,就好比你 A 系統(tǒng)發(fā)送個請求到 mq,然后 B 系統(tǒng)消息消費之后處理了。
那 A 系統(tǒng)如何知道 B 系統(tǒng)的處理結(jié)果?
答案是:用 zookeeper 就可以實現(xiàn)分布式系統(tǒng)之間的協(xié)調(diào)工作。A 系統(tǒng)發(fā)送請求之后可以在 zookeeper 上對某個節(jié)點的值注冊個監(jiān)聽器,一旦 B 系統(tǒng)處理完了就修改 zookeeper 那個節(jié)點的值,A 系統(tǒng)立馬就可以收到通知,完美解決。
下圖用一個用戶提交訂單請求展示了整個過程:
這是zk的第二個使用場景。舉個栗子,對某一個數(shù)據(jù)連續(xù)發(fā)出兩個修改操作,兩臺機(jī)器同時收到了請求,但是只能一臺機(jī)器先執(zhí)行完另外一個機(jī)器再執(zhí)行。
那么此時就可以使用 zookeeper 分布式鎖,一個機(jī)器接收到了請求之后先獲取 zookeeper 上的一把分布式鎖,就可以去創(chuàng)建一個 znode,接著執(zhí)行操作;
然后另外一個機(jī)器也嘗試去創(chuàng)建那個 znode,結(jié)果發(fā)現(xiàn)自己創(chuàng)建不了,因為被別人創(chuàng)建了,那只能等著,等第一個機(jī)器執(zhí)行完了自己再執(zhí)行。
整個過程,如下圖所示:
第三個場景,zookeeper 可以用作很多系統(tǒng)的配置信息的管理,比如 kafka、storm 等等很多分布式系統(tǒng)都會選用 zookeeper 來做一些元數(shù)據(jù)、配置信息的管理,包括 dubbo 注冊中心不也支持 zookeeper 么?
下圖展示了如何用zookeeper管理dubbo注冊中心。
HA高可用性
第四個應(yīng)用場景即高可用(HA),這個應(yīng)該是很常見的。
比如 hadoop、hdfs、yarn 等很多大數(shù)據(jù)系統(tǒng),都選擇基于 zookeeper 來開發(fā) HA 高可用機(jī)制。
具體來說就是一個重要進(jìn)程一般會做主備兩個,主進(jìn)程掛了立馬通過 zookeeper 感知到切換到備用進(jìn)程。
同樣還是通過一張圖來看看
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨有T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務(wù)器買多久送多久。