1

在 Kafka v 0.8.2 中,作为生产者发送 ProducerRecords 列表而不是一次仅发送一个列表是否仍然可能/有益?检查 API 似乎 org.apache.kafka.clients.producer.KafkaProducer 无法使用一次发送调用发送多个 producerRecords。

但是,在 javaapi 下的生产者中,可以发送 keyedMessages 列表。有人可以解释其中的区别或指出我正确的方向吗?非常感激。

4

2 回答 2

2

javaapi 下的生产者是旧的实现,已被客户端中的新实现所取代。新的生产者实现仍然可以将消息一起批处理,但会在后台执行此操作,并且在调用发送时,您将获得每条消息的未来返回。

批量大小和延迟可以通过参数“batch.size”和“linger.ms”来控制。有关详细信息,请参阅文档

于 2015-07-08T12:24:55.520 回答
1

0.8.2不支持在 prevois 版本中发送消息列表。相反,send(ProducerRecord<K,V> record, Callback callback)它提供了一个回调。

但是,您可以使用旧客户端,但不建议这样做,因为据称新的 kafka 客户端比以前的客户端更快更好。

于 2015-07-08T04:22:43.277 回答