Apache ZooKeeper分布式系統(tǒng)協(xié)調(diào)
ZooKeeper 是一個(gè)集中式服務(wù),用于維護(hù)配置信息、命名、提供分布式同步和提供組服務(wù)。所有這些類型的服務(wù)都以某種形式被分布式應(yīng)用所使用。每次實(shí)現(xiàn)這些服務(wù)時(shí),都會(huì)有大量的工作要去修復(fù)不可避免的bug和競(jìng)賽條件。由于實(shí)現(xiàn)這類服務(wù)的困難,應(yīng)用程序最初通常會(huì)吝嗇它們,這使得它們?cè)谧兓媲白兊么嗳酰y以管理。即使做得正確,這些服務(wù)的不同實(shí)現(xiàn)也會(huì)導(dǎo)致應(yīng)用部署時(shí)的管理復(fù)雜性。
ZooKeeper 的目標(biāo)是將這些不同服務(wù)的精髓提煉成一個(gè)非常簡(jiǎn)單的接口,以實(shí)現(xiàn)集中式的協(xié)調(diào)服務(wù)。服務(wù)本身是分布式的,并且高度可靠。共識(shí)、群組管理和存在協(xié)議將由服務(wù)來(lái)實(shí)現(xiàn),這樣應(yīng)用程序就不需要自己去實(shí)現(xiàn)它們。這些應(yīng)用的具體用途將包括Zoo Keeper的具體組件和應(yīng)用的具體約定的混合物。ZooKeeper Recipes 展示了如何使用這個(gè)簡(jiǎn)單的服務(wù)來(lái)構(gòu)建更強(qiáng)大的抽象。
官方表示,其為應(yīng)用程序本身提供了與Zoo Keeper的Java和C接口。 多種客戶端綁定可用于多種語(yǔ)言,包括Python,Ruby和Go。
評(píng)論
圖片
表情
