Альтернатива `--num-threads` опции org.apache.kafka.tools.ProducerPerformance Kafka - PullRequest
0 голосов
/ 10 марта 2019

Кафка удалил параметр --num-threads из option of org.apache.kafka.tools.ProducerPerformance из Кафка 2.0

Какое еще решение из этого?

1 Ответ

0 голосов
/ 10 марта 2019

Сначала нам нужно понять, для чего использовалась опция --num-threads.

Параметр --num-threads ранее использовался для управления пропускной способностью сообщений на поток.

Что-то вроде

 ProducerPerformanceThread[] producerPerformanceThreads = new ProducerPerformanceThread[numThreads];
        long numRecordsPerThread = numRecords / numThreads;
        int throughputPerThread = throughput <= 0 ? throughput : Math.max(throughput / numThreads, 1);
        int batchSize = 1;

Однако теперь с этим изменением они покончили с грубым способом регулирования или регулирования пропускной способности и вместо этого дали вам возможность полностью отказаться от регулирования, что можно сделать, установив для параметра --throughput значение, равное -1

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

ThroughputThrottler throttler = new ThroughputThrottler(throughput, startMs);

Так что теперь вы должны установить только значение пропускной способности и не беспокоиться о количестве потоков.

...