Потребитель кафки потребляет не более 200 в секунду - PullRequest
0 голосов
/ 03 мая 2018

Мы подписываемся на производителя кафки с нашим потребителем, и в нашей реализации мы застряли потребляя максимум 200 событий в секунду.

Для тестирования мы получаем байты, не производим десериализацию и немедленно отбрасываем их, и все же мы застряли на максимуме ~ 200 / с

Наш потребительский конфиг выглядит следующим образом:

сб (v0.13.5): "org.apache.kafka" % "kafka-clients" % "1.0.1"

val props: Properties = new Properties()
props.put(ConsumerConfig.CLIENT_ID_CONFIG, "some-client")
props.put(ConsumerConfig.BOOTSTRAP_SERVERS_CONFIG, "<list-of-kafka-brokers:6668>")
props.put(ConsumerConfig.GROUP_ID_CONFIG, "test")
props.put(ConsumerConfig.ENABLE_AUTO_COMMIT_CONFIG, "true")
props.put(ConsumerConfig.AUTO_COMMIT_INTERVAL_MS_CONFIG, "1000")
props.put(ConsumerConfig.SESSION_TIMEOUT_MS_CONFIG, "3000")
props.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.ByteArrayDeserializer")
props.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.ByteArrayDeserializer")
props.put(ConsumerConfig.FETCH_MIN_BYTES_CONFIG, "64")
props.put(ConsumerConfig.FETCH_MAX_BYTES_CONFIG, "50")
props.put(ConsumerConfig.MAX_PARTITION_FETCH_BYTES_CONFIG, "2000")
props.put(CommonClientConfigs.RECEIVE_BUFFER_CONFIG, "102400")

Есть идеи, что может заставить нашего потребителя обрабатывать макс всего лишь 200 макс?

PS: наша машина имеет 16 ГБ оперативной памяти с 8 ядрами и 4 ГБ пространства кучи JVM

...