Zab 是zookeeper的保證原子性的廣播協(xié)議跟继。
用來(lái)傳播leader產(chǎn)生的狀態(tài)改變柄沮。
http://www.cnblogs.com/tommyli/p/3766189.html
1.數(shù)據(jù)發(fā)布與訂閱(配置中心)
發(fā)布與訂閱模型珍剑,即所謂的配置中心捎拯,顧名思義就是發(fā)布者將數(shù)據(jù)
發(fā)布到ZK節(jié)點(diǎn)上你弦,供訂閱者動(dòng)態(tài)獲取數(shù)據(jù)弃衍,實(shí)現(xiàn)配置信息的集中
式管理和動(dòng)態(tài)更新呀非。例如全局的配置信息,服務(wù)式服務(wù)框架的服務(wù)
地址列表等就非常適合使用。
應(yīng)用中用到的一些配置信息放到ZK上進(jìn)行集中管理岸裙。這類場(chǎng)景通
常是這樣:應(yīng)用在啟動(dòng)的時(shí)候會(huì)主動(dòng)來(lái)獲取一次配置猖败,同時(shí),在節(jié)
點(diǎn)上注冊(cè)一個(gè)Watcher降允,這樣一來(lái)恩闻,以后每次配置有更新的時(shí)候,
都會(huì)實(shí)時(shí)通知到訂閱的客戶端剧董,從來(lái)達(dá)到獲取最新配置信息的目
的幢尚。
分布式搜索服務(wù)中,索引的元信息和服務(wù)器集群機(jī)器的節(jié)點(diǎn)狀態(tài)存
放在ZK的一些指定節(jié)點(diǎn)翅楼,供各個(gè)客戶端訂閱使用尉剩。
分布式日志收集系統(tǒng)。這個(gè)系統(tǒng)的核心工作是收集分布在不同機(jī)器
的日志毅臊。收集器通常是按照應(yīng)用來(lái)分配收集任務(wù)單元理茎,因此需要在
ZK上創(chuàng)建一個(gè)以應(yīng)用名作為path的節(jié)點(diǎn)P,并將這個(gè)應(yīng)用的所有機(jī)
器ip管嬉,以子節(jié)點(diǎn)的形式注冊(cè)到節(jié)點(diǎn)P上皂林,這樣一來(lái)就能夠?qū)崿F(xiàn)機(jī)器
變動(dòng)的時(shí)候,能夠?qū)崟r(shí)通知到收集器調(diào)整任務(wù)分配蚯撩。
系統(tǒng)中有些信息需要?jiǎng)討B(tài)獲取础倍,并且還會(huì)存在人工手動(dòng)去修改這個(gè)
信息的發(fā)問(wèn)。通常是暴露出接口求厕,例如JMX接口著隆,來(lái)獲取一些運(yùn)行
時(shí)的信息。引入ZK之后呀癣,就不用自己實(shí)現(xiàn)一套方案了美浦,只要將這
些信息存放到指定的ZK節(jié)點(diǎn)上即可。
**注意**:在上面提到的應(yīng)用場(chǎng)景中项栏,有個(gè)默認(rèn)前提是:數(shù)據(jù)量很
小浦辨,但是數(shù)據(jù)更新可能會(huì)比較快的場(chǎng)景。
2.負(fù)載均衡
Paste_Image.png
3.命名服務(wù)(Naming Service)
Paste_Image.png
4.分布式通知/協(xié)調(diào)
Paste_Image.png
5.集群管理與Master選舉
Paste_Image.png
Paste_Image.png
Paste_Image.png