跟我學Kafka之zookeeper的儲存結構

2021-09-20 05:10:51 字數 1542 閱讀 4216

/brokers/topics/[topic] :

儲存某個topic的partitions所有分配資訊:

schema:

}example:

}

/brokers/topics/[topic]/partitions/[0...n] 其中[0..n]表示partition索引號

/brokers/topics/[topic]/partitions/[partitionid]/state

schema:

example:

/brokers/ids/[0...n]

每個broker的配置檔案中都需要指定乙個數字型別的id(全域性不可重複),此節點為臨時znode(ephemeral)

schema:

example:

/controller_epoch -> int (epoch)

此值為乙個數字,kafka集群中第乙個broker第一次啟動時為1,以後只要集群中center controller(**控制器)所在broker變更或掛掉,就會重新選舉新的center controller,每次center controller變更controller_epoch值就會 + 1;

/controller -> int (broker id of the controller)

儲存center controller(**控制器)所在kafka broker的資訊。

schema:

example:

這個的意思就說明,當前的controller所在的broker機器是哪台,變更時間是多少等。

/consumers/[groupid]/ids/[consumeridstring]

每個consumer都有乙個唯一的id(consumerid可以通過配置檔案指定,也可以由系統生成),此id用來標記消費者資訊。

schema:

,"topic名稱": consumer中topic消費者執行緒數

"pattern": "static",

"timestamp": "consumer啟動時的時間戳"

}

/consumers/[groupid]/offsets/[topic]/[partitionid] -> long (offset)

用來跟蹤每個consumer目前所消費的partition中最大的offset。此znode為持久節點,可以看出offset跟group_id有關,以表明當消費者組(consumer group)中乙個消費者失效,重新觸發balance,其他consumer可以繼續消費。

跟我學XSL XSL入門

跟我學xsl xsl入門 上期我們講到用css 層疊樣式表 來格式化xml文件,其效果並不很令人滿意。實際上css用來格式化html標記比較合適些,只是因為它簡單才在上例中採用。xml在更多的時候只是一種資料檔案,怎樣將它變為我們日常所看到的html格式那樣的檔案呢?如果我們將xml檔案比作結構化的...

跟我學XSL(六)

今天我們學習xsl的各種運算子,滿足編寫更大靈活性的xsl樣式的要求。表 一 運算子與特殊字元 運算子描述選擇子元素,返回左側元素的直接子元素 如果 位於最左側表示選擇根結點的直接子元素 遞迴下降,不論深度,搜尋指定的元素 如果位於最左側表示從根結點出發遞迴下降搜尋指定元素 表示當前元素 萬用字元,...

跟我學XSL(三)

經過前幾日的學習,我們學習了xhtml文件的編寫和以及三個xsl元素,已能編寫相當靈活的xsl文件,今天將學習的是xsl模板的編寫。我們都知道,短的文件 程式十分好讀,但當規模增大後,其複雜性也以更快的速度增加。前面我們學了 xsl for each xsl value of 等,可以用它們對xml...