#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