Связь между maxPollRecords и autoCommitEnable в Кафке - PullRequest
0 голосов
/ 04 июня 2018

Может кто-то, пожалуйста, дайте мне хороший пример и взаимосвязь между параметрами kafka maxPollRecords и autoCommitEnable в Kafka.

1 Ответ

0 голосов
/ 04 июня 2018

Между ними нет никакой связи.Позвольте мне объяснить вам две конфигурации.

В Kafka есть два способа, которыми потребитель может зафиксировать смещения -

1. Ручная фиксация - когда ответственность за фиксацию смещений лежит на разработчику.

2.ВключитьАвтоматическая фиксация. Здесь потребитель Kafka берет на себя ответственность за компенсацию за вас.Как это работает, при каждом вызове poll (), который вы выполняете для потребителя, проверяется, пора ли зафиксировать смещение (это диктуется конфигурацией auto.commit.interval.ms), если это время, он фиксируетсмещение.

Например - Предположим, что auto.commit.interval.ms установлен на 7 секунд, а каждый вызов poll () занимает 8 секунд.Таким образом, при конкретном вызове poll () он будет проверять, истекло ли время фиксации смещения, которое в этом примере будет иметь место, затем он будет фиксировать смещения, извлеченные из предыдущего опроса.

Смещениятакже совершено при закрытии клиента.

Вот некоторые ссылки, которые вы можете посмотреть -

https://kafka.apache.org/documentation/#consumerconfigs

https://kafka.apache.org/11/javadoc/org/apache/kafka/clients/consumer/KafkaConsumer.html

Не теряет ли Кафка сообщение, если потребитель хранит сообщение дольше, чем время интервала автоматической фиксации?

Теперь на Max.poll.records.С помощью этой конфигурации вы можете сообщить потребителю kafka, какое максимальное количество записей вы хотите вернуть при одном вызове poll ().Обратите внимание, что вы, как правило, не будете изменять для этого значения по умолчанию, если только ваша обработка записей не выполняется медленно и вы не хотите, чтобы ваш потребитель не считался мертвым из-за медленной обработки слишком большого количества записей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...