Kafka ConsumerPerformance - PullRequest
       32

Kafka ConsumerPerformance

0 голосов
/ 23 октября 2018

Мой кластер Kafka имеет следующую конфигурацию.

  • Кластер версий Kafka (v1.1.0) с 3 брокерами
  • Одна тема ("fara") с 5 разделами и 3 репликами
  • В каждом разделе есть10.000.000 сообщений.Всего 50.000.000

Я использую kafka-consumer-perf.test с дистрибутивом, который использует ConsumerPerformance.

Моя первая рабочая конфигурация следующая:

  • 1 Экземпляр получателя (50.000.000 записей экземпляром)
  • 5 потоков извлечения (1 по разделам)
  • Группа получателей = testgroup1

Команда, которую я запускаю:

$ KAFKA_HOME / bin / kafka-consumer-perf-test.sh \ --new-consumer \ --broker-list $ BROKER_LIST \ --messages 50000000\ --message-size 100 \ --topic fara \ --consumer.config $ KAFKA_HOME / config / consumer.ssl.properties \ --num-fetch-threads 5 \ --show-подробные-статистика \ --reporting-интервал $ REPORT_INTERVAL \ --group testgroup1

Я периодически запускаю команду ниже

. / kafka-run-class.sh kafka.admin.ConsumerGroupCommand --bootstrap-сервер 192.168.10.10:9093 --новый потребитель --для описания --group testgroup1 --command-config ../config/consumer.свойства

          TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID                                     HOST            CLIENT-ID
          fara          4          1056241         10000000        8943759         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          3          1075308         10000000        8924692         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          1          1056241         10000000        8943759         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          2          2129355         10000000        7870645         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          0          1075308         10000000        8924692         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1


          fara          4          2302837         10000000        7697163         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          3          2377136         10000000        7622864         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          1          2302837         10000000        7697163         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          2          4641785         10000000        5358215         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          0          2377197         10000000        7622803         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1


          fara          4          5576341         10000000        4423659         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          3          5738479         10000000        4261521         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          1          5576341         10000000        4423659         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          2          10000000        10000000        0               consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          0          5739456         10000000        4260544         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1


          fara          4          8735653         10000000        1264347         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          3          8825872         10000000        1174128         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          1          8735653         10000000        1264347         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          2          10000000        10000000        0               consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1
          fara          0          8827764         10000000        1172236         consumer-1-f9fd5d69-6ba1-4da1-9eb9-29a64a83d1fa /192.168.10.145 consumer-1


          fara          4          10000000        10000000        0               -               -               -
          fara          3          10000000        10000000        0               -               -               -
          fara          1          10000000        10000000        0               -               -               -
          fara          2          10000000        10000000        0               -               -               -
          fara          0          10000000        10000000        0               -               -               -

Все сообщения потребляются.

Вторая неудачная конфигурация следующая:

  • 5 Потребительэкземпляры (10.000.000 записей по экземпляру)
  • 1 потоков извлечения по потребителю (для использования только раздела)
  • Группа потребителей = testgroup2 для всех экземпляров

Я запускаю команду:

$ KAFKA_HOME / bin / kafka-consumer-perf-test.sh \ --new-consumer \ --broker-list $ BROKER_LIST \ --messages 10000000 \ -размер сообщения 100 \ --topic fara \ --consumer.config $ KAFKA_HOME / config / consumer.ssl.properties \ --num-fetch-threads 1 \ --show-подробные-статистика \ --reporting-interval $ REPORT_INTERVAL\ --group testgroup2

Я периодически запускаю команду ниже

. / kafka-run-class.sh kafka.admin.ConsumerGroupCommand --bootstrap-server 192.168.10.10: 9093 - новый потребитель - описать --group testgroup2 --command-config ../config/consumer.properties

         TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID                                     HOST            CLIENT-ID
          fara          1          4129909         10000000        5870091         consumer-1-2e20de15-9396-4ebb-a77d-c16ef7c0cb03 /192.168.10.145 consumer-1
          fara          4          4520065         10000000        5479935         consumer-1-ed2e3f63-23e9-489a-a9bc-422e7830fc9c /192.168.10.139 consumer-1
          fara          2          4310725         10000000        5689275         consumer-1-5dbc6ec0-7bc6-4d71-8b17-1b5af261479d /192.168.10.134 consumer-1
          fara          3          4038958         10000000        5961042         consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1
          fara          0          4524641         10000000        5475359         consumer-1-2a7186c9-c4a0-41d6-ba5e-809964b7b709 /192.168.10.134 consumer-1



          fara          1          6071173         10000000        3928827         consumer-1-2e20de15-9396-4ebb-a77d-c16ef7c0cb03 /192.168.10.145 consumer-1
          fara          4          6689713         10000000        3310287         consumer-1-ed2e3f63-23e9-489a-a9bc-422e7830fc9c /192.168.10.139 consumer-1
          fara          2          6437488         10000000        3562512         consumer-1-5dbc6ec0-7bc6-4d71-8b17-1b5af261479d /192.168.10.134 consumer-1
          fara          3          6194150         10000000        3805850         consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1
          fara          0          6612859         10000000        3387141         consumer-1-2a7186c9-c4a0-41d6-ba5e-809964b7b709 /192.168.10.134 consumer-1


          fara          1          7489057         10000000        2510943         consumer-1-2e20de15-9396-4ebb-a77d-c16ef7c0cb03 /192.168.10.145 consumer-1
          fara          4          8212273         10000000        1787727         consumer-1-ed2e3f63-23e9-489a-a9bc-422e7830fc9c /192.168.10.139 consumer-1
          fara          2          7883485         10000000        2116515         consumer-1-5dbc6ec0-7bc6-4d71-8b17-1b5af261479d /192.168.10.134 consumer-1
          fara          3          7457277         10000000        2542723         consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1
          fara          0          8039217         10000000        1960783         consumer-1-2a7186c9-c4a0-41d6-ba5e-809964b7b709 /192.168.10.134 consumer-1


          fara          2          8535701         10000000        1464299         consumer-1-5dbc6ec0-7bc6-4d71-8b17-1b5af261479d /192.168.10.134 consumer-1
          fara          3          8113576         10000000        1886424         consumer-1-5dbc6ec0-7bc6-4d71-8b17-1b5af261479d /192.168.10.134 consumer-1
          fara          0          8580780         10000000        1419220         consumer-1-2a7186c9-c4a0-41d6-ba5e-809964b7b709 /192.168.10.134 consumer-1
          fara          1          7926793         10000000        2073207         consumer-1-2a7186c9-c4a0-41d6-ba5e-809964b7b709 /192.168.10.134 consumer-1
          fara          4          8897425         10000000        1102575         consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1


          fara          4          9884954         10000000        115046          consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1
          fara          3          8693017         10000000        1306983         consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1
          fara          1          8564365         10000000        1435635         consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1
          fara          2          9197795         10000000        802205          consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1
          fara          0          9217803         10000000        782197          consumer-1-646b2ebd-3a36-4e09-a7d4-658225492a03 /192.168.10.145 consumer-1


          fara          4          9942050         10000000        57950           -               -               -
          fara          3          8749827         10000000        1250173         -               -               -
          fara          1          8621461         10000000        1378539         -               -               -
          fara          2          9311260         10000000        688740          -               -               -
          fara          0          9274899         10000000        725101          -               -               -

Я не понимаю, почему все записи не используются.любая помощь, пожалуйста?

1 Ответ

0 голосов
/ 28 октября 2018

Я исправил свои проблемы, переопределив класс ConsumerPerformance.scala, который поступает в версии 1.1.0 в этих двух случаях.

  1. Дублирующие записи Когда я запускаю разные процессы класса ConsumerPerformance одновременноИногда я вижу дубликаты из-за этой строки (по крайней мере, это мое впечатление).

https://github.com/apache/kafka/blob/1.1.0/core/src/main/scala/kafka/tools/ConsumerPerformance.scala#L161

Потребители внезапно перестают работать. Время ожидания установлено равным 1000, поэтому, если подсчет сообщений, полученных в пуле, занимает более 1 секунды, потребитель перестает потреблять.

https://github.com/apache/kafka/blob/1.1.0/core/src/main/scala/kafka/tools/ConsumerPerformance.scala#L169

...