Zookeeper 初步認識及基本應用

2021-10-10 07:56:46 字數 1949 閱讀 4932

初步認識zookeeper

zookeeper是乙個開源的分布式協調服務,是由雅虎建立的,基於google chubby。基於google chubby的開源實現。zookeeper的設計目的是將那些複雜且容易出錯的分布式一致性服務封裝起來。

zookeeper 是什麼

分布式資料一致性解決方案

zookeeper 解決的問題

作為一種中介軟體去解決資源共享的問題,如下:

協議位址維護

負載均衡機制

服務動態上下感知

zookeeper 能做什麼

資料的發布/訂閱(配置中心:disconf)、負載均衡(dubbo利用了zookeeper機制實現負載均衡)、命名服務、

master選舉(kafka、hadoop、hbase)、分布式佇列、分布式鎖

zookeeper 資料結構

zookeeper 的特性

從同乙個客戶端發起的事務請求,最終會嚴格按照順序被應用到zookeeper中

所有的事務請求處理結果在整個集群中的所有機器上的應用情況是一致的,也就是說,要麼整個集群中的所有機器都成功應用了某一事務、要麼全都不應用。

一旦伺服器成功應用了某一事務資料,並且對客戶端做了響應,那麼這個資料在整個集群中一定是同步並且保留下來的

一旦乙個事務被成功應用,客戶端就能夠立即從伺服器端讀取到事務變更後的最新資料狀態;(zookeeper僅僅保證在一定時間內、近實時)

zookeeper 節點特性

大多數時候,我們對zookeeper的操作都是在對節點進行增、刪、改、查

zookeeper 核心zoo.cfg配置檔案

zookeeper安裝

單機環境安裝

stable/

客戶端連線

退出./zkserver.sh stop

get path 獲取指定節點的內容

delete /node_1/node_1_10000000001

注意:delete只能刪除不包含子節點的節點,如果要刪除的節點包含子節點,使用rmr命令

rmr /node_1

查詢相關指令

[zk: 192.168.1.102(connected) 18] ls /

[zookeeper]

zookeeper 會話生命週期

zookeeper 實現原理

zookeeper 初步認識zk

由於網際網路的快速發展,業務需求的激增,所以簡單的單體架構已經無法滿足我們的業務需求了,所以分布式架構應運而生。但是當服務越來越多的時候,規模越來越大,單靠人工管理和維護服務以及位址的配置資訊會越來越困難,所以需要有乙個服務發現與註冊中心來統一控制。zk定義 zookeeper 是乙個開源的分布式協...

Nginx(一)初步認識及配置

是乙個高效能的反向 伺服器。正向 的是客戶端,反向 的是伺服器 nginx與apache是靜態web伺服器,本身只能解析靜態資源 html,jpg 想解析動態資源需要依賴第三方模組 tomcat是動態伺服器,可以解析 jsp,servlet apache資歷老,但nginx支援高併發能力更強。tar...

Nginx的初步認識及配置

1 什麼是nginx?是乙個高效能的反向 伺服器,正向 的是客戶端,反向 的是服務端 3 虛擬主機配置 基於埠號的虛擬主機 基於網域名稱的虛擬主機 配置語法 location uri 配置規則 location uri 精準匹配 location uri 字首匹配 location uri loca...