日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

kafka中Topic、消費組以及消息狀態詳解

作者:FindingKeys_wht 更新時間: 2022-07-13 編程語言

1. topic狀態詳解

在這里插入圖片描述
① topic名稱

② topic分區總數

③ topic副本總數

④ topic配置,包含老化時間、老化大小、分段大小配置。topic分區是以分段文件大小去老化,一段文件的消息時間滿足老化時間或老化的大小,則該該段文件老化。

⑤ topic分區,分區以0開始

⑥ topic 分區的leader id,leader id從isr中選取,leader為none時表示,topic分區無leader,topic不可用。

⑦ topic分區的副本列表,數量等于副本總數

⑧ topic分區的isr 列表,isr為leader的候選列表,數量小于等于副本列表數量,isr代表副本已經完成從leader到其他副本間的數據同步,可以作為leader的候選列表。

2. 消費組狀態詳解

image-20220613175319503
① 消費組名稱

② 訂閱的topic名稱

③ PARTITION 表示topic 分區id

④ CURRENT-OFFSET 代表消費者已消費該topic-分區的進度。消費者poll消息,并commit才會刷新該值。

⑤ LOG-END-OFFSET 代表該topic-分區消息的高水位。表示該topic-分區已有的消息數量。

⑥ LAG 消費擠壓。表示消費者對該topic-分區的消費積壓情況,還剩多少條未消費。LAG = LOG-END-OFFSET - CURRENT-OFFSET, LAG為0,表示該topic-分區無積壓。

⑦ CONSUMER-ID。消費者id,唯一id對應一個消費者,一般對應業務的一個消費線程。通常情況下,業務的消費線程不斷的循環poll消息,消費者id也一直在組里。

⑧ CONSUMER-ID 為 “-”。CONSUMER-ID 為 “-” 為異常場景,可理解為消費者已經離開消費組。一般情況下,為業務消費線程已不再消費,此時業務應該排查自己的消費線程是否不再拉取消息,甚至是否線程已跑飛。

3.生產的消息狀態詳解

? 業務經常會有消息有沒有生產成功的疑問,從業務日志上看,業務充分捕獲異常消息,生產消息未發生異常,消息一般生產成功。如還有疑問可以進行如下步驟進行確認。

3.1 查看topic-分區的文件信息
在這里插入圖片描述
① log文件為testtopic1的分區2的數據文件。

? 業務可根據log文件的最后修改時間判斷是否生產成功,與業務生產消息時間一致,即生產成功。

② kafka topic數據的目錄

3.2 利用腳本解析數據文件,查看具體消息體內容。解析topic文件,查看解析內容。

在這里插入圖片描述
在這里插入圖片描述
① 解析消息命令

② offset: 具體某條生產成功的消息的offset

③ CreateTime:該條消息的落盤時間

④ compressType:壓縮算法

⑤ headerKeys:消息頭

⑥ payload :生產的消息內容。業務直接關心的消息內容

原文鏈接:https://blog.csdn.net/wht_0217/article/details/125718187

欄目分類
最近更新