Кафка уменьшает задержку для потребителя

#apache-kafka #kafka-consumer-api

#apache-kafka #кафка-потребитель-api

Вопрос:

Я настраиваю новый кластер Kafka и для целей тестирования создал тему с 1 разделом и 3 репликами.

Теперь я параллельно отправляю сообщения через производителя, скажем, 50 тысяч сообщений в секунду. И я создал одного потребителя внутри группы, и он может получать только 30 тысяч сообщений в секунду.

Я могу изменить уровень темы, уровень раздела, конфигурации уровня потребителя.

Я отслеживаю все через grafana prometheus.

Есть идеи, какая конфигурация или что-то еще может помочь мне получить больше данных??

Заранее спасибо

Комментарии:

1. Вы смотрели на показатели Кафки? Может быть, это проблема с сетью?

2. вы согласны с изменением конфигурации разделов?

3. Да, я также могу изменить настройки уровня раздела.

Ответ №1:

Пользователь Kafka опрашивает брокера на наличие сообщений и извлекает любые сообщения, доступные для использования, в зависимости от используемой конфигурации потребителя. В общем, эффективно передавать как можно больше данных за один запрос опроса, если вашей целью является увеличение пропускной способности. Но объем данных, передаваемых в одном опросе, определяется размером сообщений, количеством записей и некоторыми параметрами, которые определяют, сколько времени требуется для ожидания доступности сообщений.

В общем, вы можете влиять на пропускную способность, используя одну или несколько из следующих конфигураций потребителя:

fetch.min.bytes

max.partition.fetch.bytes

fetch.max.bytes

max.poll.records

fetch.max.wait.ms