Я экспериментирую с kafka и сравниваю производительность хотя бы один раз с производительностью не более одного раза. Однако из моих тестовых прогонов кажется, что хотя бы один раз пропускная способность выше, чем максимум один раз? Это не имеет смысла, поскольку хотя бы один раз используется подтверждение et c. Ниже приведены настройки, которые я использую.
Не более одного раза я использую следующие настройки:
Производитель
properties.put("acks", "0");
properties.put("retries", 0);
Потребитель
properties.put("enable.auto.commit", "true");
Хотя бы один раз я использую следующие настройки:
Производитель
(Standard settings)
Потребитель
properties.put("enable.auto.commit", "false");
И я делаю
kafkaConsumer.commitSync();
После каждого опроса ConsumerRecords
Как выполняются измерения
На моем испытательном стенде я измеряю два значения :
- (Пропускная способность) Количество сообщений, получаемых потребителем каждую секунду
- (Задержка) Средняя задержка для сообщений, получаемых потребителем каждую секунду
Когда я запускаю Kafka в режиме не более одного раза, задержка выше, а пропускная способность ниже