2017-08-31 57 views
1

偏移我有3名消費者在同一組,我打電話尋求()來設置一個消費者一個分區的偏移量。會爲組中的所有使用者設置偏移量還是僅爲該特定分區上的偏移量設置偏移量?是否呼籲尋求一個組中的消費者爲整個集團

我希望能夠重置組與日誌中的所有記錄的開始。但我只會呼籲尋求一位消費者。

回答

1

具有3名消費者在同一組是指一個分區只分配給這些消費者之一,所以當你打電話尋求,它只有該分區上只有一個消費者,以便其他人不產生影響影響。

1

尋求()將回滾到僅該分區指定的偏移量。 但是,對於舊的高級消費者API,沒有辦法做到這一點。 但在調用方法

public void seek(TopicPartition partition, 
    long offset); 

將快倒在分區提供TopicPartition的話題來抵消。

如果你想重置集團消費,那麼你就必須做出尋求電話TopicPartition與每個分區的偏移。

或者你可以使用offsetsForTimes並按規定在這裏呼籲組分區: https://jeqo.github.io/post/2017-01-31-kafka-rewind-consumers-offset/

如果您使用的是舊的高層次的消費,目前還沒有API中的消費者復位偏移。唯一的方法是停止所有消費者並手動爲ZK重置該消費羣組的偏移量。

然而,在0.11.0版本中加入一個工具來重置偏移量與不同的範圍如主題,分區等羣體。 您可以在這裏找到詳細信息: https://cwiki.apache.org/confluence/display/KAFKA/KIP-122%3A+Add+Reset+Consumer+Group+Offsets+tooling。和 https://issues.apache.org/jira/browse/KAFKA-4743

相關問題