Необходимо убедиться, что ваш потребитель получает новую группу потребителей (в Java API конфигурация потребителя для этого называется group.id
) при каждом перезапуске приложения. Даже если вы перезапустите своего брокера, вы все равно перезапустите приложение с новым group.id
. И сохраните конфигурацию auto.offset.reset=latest
.
Другой вариант - вручную изменить смещения группы потребителей после каждого перезапуска брокера. Kafka поставляется с инструментом ConsumerGroupCommand. Вы можете найти некоторую информацию в документации Kafka Управление группами потребителей .
Если вы планируете сбросить определенную группу потребителей («myConsumerGroup»), вы можете использовать
> bin/kafka-consumer-groups.sh --bootstrap-server localhost:9092 --reset-offsets --group myConsumerGroup --topic topic1 --to-latest
В зависимости от ваших требований вы можете сбросить смещения для каждого раздела topi c с помощью этого инструмента. Справочная функция или документация объясняют параметры.