通过什么配置,可以只发送一个带有KafkaProducer的ProducerRecord以便不批量发送消息?

还是无法使用KafkaProducer仅发送一条记录?

(使用Kafka Streams,可以只处理一条记录并将其发送到主题)。

我当前的配置是:

  Properties kafkaProps = new Properties();
  kafkaProps.put("key.serializer", "org.apache.kafka.common.serialization.StringSerializer");
  kafkaProps.put("value.serializer", "org.apache.kafka.common.serialization.StringSerializer");
  kafkaProps.put(ProducerConfig.ACKS_CONFIG, "1");
  kafkaProps.put("retries", 3);
  kafkaProps.put(ProducerConfig.REQUEST_TIMEOUT_MS_CONFIG, 120000);
  kafkaProps.put(ProducerConfig.BATCH_SIZE_CONFIG, 1024);
  kafkaProps.put(ProducerConfig.LINGER_MS_CONFIG, 0);
  kafkaProps.put(ProducerConfig.BUFFER_MEMORY_CONFIG, 1024);
  kafkaProps.put("compression.type", "gzip");
  KafkaProducer producer = new KafkaProducer<String, String>(kafkaProps);

最佳答案

您可以在flush之后立即显式producer send

10-06 03:41