1. 程式人生 > >zookeeper配置引數解讀

zookeeper配置引數解讀

解讀zoo.cfg 檔案中引數含義

1tickTime:通訊心跳數,Zookeeper伺服器心跳時間,單位毫秒

用於配置 ZooKeeper 中最小時間單位的長度,很多執行時的時間間隔都是使用 tickTime 的倍數來表示的。例如,ZooKeeper 中會話的最小超時時間預設是 2*tickTime。

2initLimit:用於叢集中Leader(主節點)和Flower(從節點)初始化時通訊時限

叢集中的follower跟隨者伺服器(F)leader領導者伺服器(L)之間初始連線時能容忍的最多心跳數(tickTime的數量)initLimit* tickTime,用它來限定叢集中的Zookeeper

伺服器連線到Leader的時限。

投票選舉新leader的初始化時間

Follower在啟動過程中,會從Leader同步所有最新資料,然後確定自己能夠對外服務的起始狀態

Leader允許FollowerinitLimit時間內完成這個工作。

如果ZK叢集的資料量確實很大了,F在啟動的時候,從Leader上同步資料的時間也會相應變長,因此在這種情況下,有必要適當調大這個引數了。

3)syncLimit:用於叢集中Leader(主節點)和Flower(從節點)之間傳送訊息,請求和應答通訊時限

叢集中LeaderFollower之間的最大響應時間單位,假如響應超過syncLimit * tickTime

Leader認為Follwer死掉,從伺服器列表中刪除Follwer

在執行過程中,Leader負責與ZK叢集中所有機器進行通訊,例如通過一些心跳檢測機制,來檢測機器的存活狀態。

如果L發出心跳包在syncLimit之後,還沒有從F那收到響應,那麼就認為這個F已經不線上了。

注意:不要把這個引數設定得過大,否則可能會掩蓋一些問題。(No Java system property)

4dataDir:必須配置!資料檔案目錄+資料持久化路徑

儲存記憶體資料庫快照資訊的位置如果沒有配置dataLogDir引數,那麼每次更新的日誌,也會儲存到此目錄!

5clientPort

:客戶端連線埠

監聽客戶端連線的埠