簡體   English   中英

kafka消費者抵消到最早

[英]kafka consumer offset to earliest

我是卡夫卡的新手。 目前,我在 Kafka 主題上創建了一個 java 消費者。 我想要的是在我啟動 java 應用程序時只獲取新消息。

在互聯網上檢查后,我發現我可以通過設置屬性來做到這一點: auto.offset.reset: earliest ,但我們不想使用它。 同樣在做了一些研究之后,我發現也許我們可以通過將消費者偏移量更新為最早的偏移量來做到這一點。 任何人都可以幫助知道我該怎么做嗎?

請注意,我正在使用 KStream 訂閱該主題。 Kafka 2.4.0版訂閱源碼:

StreamsBuilder sb = new StreamsBuilder();
sb.stream("topic").foreach((t, u) -> {...})

將消費者偏移量更新為最早的偏移量

當您的application.id是全新的時,這是auto.offset.reset的默認行為和配置。

請注意,我正在使用 KStream 訂閱主題。

然后你不能在運行時尋找(或者至少不應該,假設你正在使用有狀態的處理器)

使用幫助管理拓撲中使用的所有主題的應用程序重置工具

你能指定為什么你不想使用 auto.offset.reset 嗎?

這將是做你想做的事的默認方法。 除此之外,您需要 go 並獲取主題的每個分區的最新偏移量,並將您的消費者“指向”您要使用的分區上的偏移量。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM