在創建并部署云消息隊列 Kafka 版實例后,您可以使用云消息隊列 Kafka 版控制臺直接發送消息,快速測試服務端是否正常。
前提條件
您已創建并部署云消息隊列 Kafka 版實例,且實例處于服務中狀態。
操作流程
快速測試云消息隊列 Kafka 版服務端的流程如下:
您可以多次重復步驟2到步驟4,如果多次操作正常,則說明服務端正常。
如果服務端正常,但發送消息依然失敗,建議您去調用方(例如,原生客戶端、生態組件端等)排查問題。
創建Topic
在概覽頁面的資源分布區域,選擇地域。
重要Topic需要在應用程序所在的地域(即所部署的ECS的所在地域)進行創建。Topic不能跨地域使用。例如Topic創建在華北2(北京)這個地域,那么消息生產端和消費端也必須運行在華北2(北京)的ECS。
在實例列表頁面,單擊目標實例名稱。
在左側導航欄,單擊Topic 管理。
在Topic 管理頁面,單擊創建 Topic。
在創建 Topic面板,設置Topic屬性,然后單擊確定。
參數
說明
示例
名稱
Topic名稱。
demo
描述
Topic的簡單描述。
demo test
分區數
Topic的分區數量。
12
存儲引擎
說明當前僅專業版實例支持選擇存儲引擎類型,標準版暫不支持,默認選擇為云存儲類型。
Topic消息的存儲引擎。
云消息隊列 Kafka 版支持以下兩種存儲引擎。
云存儲:底層接入阿里云云盤,具有低時延、高性能、持久性、高可靠等特點,采用分布式3副本機制。實例的規格類型為標準版(高寫版)時,存儲引擎只能為云存儲。
Local 存儲:使用原生Kafka的ISR復制算法,采用分布式3副本機制。
云存儲
消息類型
Topic消息的類型。
普通消息:默認情況下,保證相同Key的消息分布在同一個分區中,且分區內消息按照發送順序存儲。集群中出現機器宕機時,可能會造成消息亂序。當存儲引擎選擇云存儲時,默認選擇普通消息。
分區順序消息:默認情況下,保證相同Key的消息分布在同一個分區中,且分區內消息按照發送順序存儲。集群中出現機器宕機時,仍然保證分區內按照發送順序存儲。但是會出現部分分區發送消息失敗,等到分區恢復后即可恢復正常。當存儲引擎選擇Local 存儲時,默認選擇分區順序消息。
普通消息
日志清理策略
Topic日志的清理策略。
當存儲引擎選擇Local 存儲(當前僅專業版實例支持選擇存儲引擎類型為Local存儲,標準版暫不支持)時,需要配置日志清理策略。
云消息隊列 Kafka 版支持以下兩種日志清理策略。
Delete:默認的消息清理策略。在磁盤容量充足的情況下,保留在最長保留時間范圍內的消息;在磁盤容量不足時(一般磁盤使用率超過85%視為不足),將提前刪除舊消息,以保證服務可用性。
Compact:使用Kafka Log Compaction日志清理策略。Log Compaction清理策略保證相同Key的消息,最新的value值一定會被保留。主要適用于系統宕機后恢復狀態,系統重啟后重新加載緩存等場景。例如,在使用Kafka Connect或Confluent Schema Registry時,需要使用Kafka Compact Topic存儲系統狀態信息或配置信息。
重要Compact Topic一般只用在某些生態組件中,例如Kafka Connect或Confluent Schema Registry,其他情況的消息收發請勿為Topic設置該屬性。具體信息,請參見云消息隊列 Kafka 版Demo庫。
Compact
標簽
Topic的標簽。
demo
創建完成后,在Topic 管理頁面的列表中顯示已創建的Topic。
發送消息
向已創建的Topic發送消息。
在Topic 管理頁面,單擊目標Topic名稱進入Topic 詳情頁面,然后單擊體驗發送消息。
在快速體驗消息收發面板,發送測試消息。
發送方式選擇控制臺。
在消息 Key文本框中輸入消息的Key值,例如demo。
在消息內容文本框輸入測試的消息內容,例如 {"key": "test"}。
設置發送到指定分區,選擇是否指定分區。
單擊是,在分區 ID文本框中輸入分區的ID,例如0。如果您需查詢分區的ID,請參見查看分區狀態。
單擊否,不指定分區。
根據界面提示信息,通過SDK訂閱消息,或者執行Docker命令訂閱消息。
發送方式選擇Docker,運行Docker容器。
執行運行 Docker 容器生產示例消息區域的Docker命令,發送消息。
執行發送后如何消費消息?區域的Docker命令,訂閱消息。
發送方式選擇SDK,根據您的業務需求,選擇需要的語言或者框架的SDK以及接入方式,通過SDK體驗消息收發。
查看分區狀態
往指定分區發送消息后,查看該分區的狀態。
在Topic 管理頁面,單擊目標Topic名稱進入Topic 詳情頁面,然后單擊分區狀態頁簽。
表 1. 分區狀態信息
參數 | 說明 |
分區ID | 該Topic分區的ID號。 |
最小位點 | 該Topic在當前分區下的最小消費位點。 |
最大位點 | 該Topic在當前分區下的最大消費位點。 |
分區消息量 | 該Topic在當前分區下的消息總量。 |
最近更新時間 | 本分區中最近一條消息的存儲時間。 |
按位點查詢消息
在概覽頁面的資源分布區域,選擇地域。
在實例列表頁面,單擊目標實例名稱。
在左側導航欄,單擊消息查詢。
在消息查詢頁面的查詢方式列表中,選擇按位點查詢。
在Topic列表中,選擇消息所屬Topic名稱;在分區列表中,選擇消息所屬的分區;在起始位點文本框,輸入消息所在分區的位點,然后單擊查詢。
展示該查詢位點及以后連續的消息。例如,指定的分區和位點都為“5”,那么返回的結果從位點“5”開始。
表 2. 查詢結果參數解釋
參數
描述
分區
消息的Topic分區。
位點
消息的所在的位點。
Key
消息的鍵(已強制轉化為String類型)。
Value
消息的值(已強制轉化為String類型),即消息的具體內容。
消息創建時間
發送消息時,客戶端自帶的或是您指定的
ProducerRecord
中的消息創建時間。說明如果配置了該字段,則按配置值顯示。
如果未配置該字段,則默認取消息發送時的系統時間。
如果顯示值為1970/x/x x:x:x,則說明發送時間配置為0或其他有誤的值。
0.9及以前版本的云消息隊列 Kafka 版客戶端不支持配置該時間。
操作
單擊下載 Key:下載消息的鍵值。
單擊下載 Value:下載消息的具體內容。
重要查詢到的每條消息在控制臺上最多顯示1 KB的內容,超過1 KB的部分將自動截斷。如需查看完整的消息內容,請下載相應的消息。
下載的消息最大為10 MB。如果消息超過10 MB,則只下載10 MB的內容。