消費者和消費者群組
kafka消費者分為消費者群組和消費者。每乙個kafka消費者都隸屬於乙個kafka消費者群組。每個消費者群組可以對應乙個或多個topic,每個topic內的分割槽只能對應消費者群組內的乙個消費者,當消費者比topic中的分割槽數多時,多餘的消費者不會接收topic中的資訊。這種方式有利於系統的伸縮性。當消費者群組中的消費者數量發生變化時會觸發消費者群組的再平衡,再平衡由每個消費者群組中第乙個加入的消費者負責處理,他負責向群組中的其他消費者分配分割槽。每個消費者群組中的成員向乙個指定的broker傳送心跳,用於維持通訊,該broker被稱為群組協調器,不同的消費者群組可以由不同的群組協調器。
offset
kafka中會記錄每個topic分割槽中被消費的offset,該提交可以由系統自動完成,但這種方式並不是乙個特別好的方法,相對來說最好由使用者自己來進行控制提交offset的時機,一般是在訊息被消費後進行提交,提交的方式可以選擇使用同步或非同步兩種方式。kafka通過offset來記錄消費者群組在topic分割槽上的讀取進度。消費者可以提交指定的offset,同時也可以提交指定的offset。
反序列化
和消費者在傳送訊息前對訊息進行序列化相對應的,消費者在接收到訊息的時候需要對訊息進行反序列化,把訊息轉化為程式能夠處理的格式。
Kafka入門 4 kafka基準測試
基準測試 benchmark testing 是一種測量和評估軟體效能指標的活動。我們可以通過基準測試,了解到軟體 硬體的效能水平。主要測試負載的執行時間 傳輸速度 吞吐量 資源佔用率等。測試步驟 啟動kafka集群 建立乙個1個分割槽1個副本的topic benchmark 同時執行生產者 消費者...
4 Kafka命令列操作
1 檢視當前伺服器中的所有topic test ip101 kafka bin kafka topics.sh zookeeper ip101 2181 list 2 建立topic test ip101 kafka bin kafka topics.sh zookeeper ip101 2181 ...
4 Kafka集群啟動 關閉指令碼
說明 本指令碼基於ssh伺服器免密登入,如集群未配置ssh,參照 ssh安裝配置 bin bash brokers server1 server2 server3 kafka home usr local services kafka kafka 2.11 2.3.0 kafka name kafk...