kafka 生产者是否能够在列表中发送多条消息?
is kafka producer capable of sending multiple messages in a list?
在 Kafka v 0.8.2 中,是否仍然 possible/beneficial 将 ProducerRecords 列表作为生产者发送,而不是一次只发送一个?检查 API 似乎 org.apache.kafka.clients.producer.KafkaProducer 无法使用一次发送调用发送多个 producerRecords。
但是,在 javaapi 下的生产者中,可以发送 keyedMessages 列表。有人可以解释差异或指出正确的方向吗?非常感谢。
0.8.2
不支持像以前版本那样发送消息列表。相反,send(ProducerRecord<K,V> record, Callback callback)
提供了一个回调。
但是您可以使用旧客户端,但不推荐这样做,因为据称新的 kafka 客户端比以前的客户端更快更好。
javaapi 下的生产者是旧的实现,已被客户端中的新实现所取代。新的生产者实现仍然可以将消息一起批处理,但会在后台执行此操作,并且在调用发送时你会得到每条消息的未来。
可以使用参数 "batch.size" 和 "linger.ms" 控制批量大小和延迟。有关详细信息,请参阅 documentation。
在 Kafka v 0.8.2 中,是否仍然 possible/beneficial 将 ProducerRecords 列表作为生产者发送,而不是一次只发送一个?检查 API 似乎 org.apache.kafka.clients.producer.KafkaProducer 无法使用一次发送调用发送多个 producerRecords。
但是,在 javaapi 下的生产者中,可以发送 keyedMessages 列表。有人可以解释差异或指出正确的方向吗?非常感谢。
0.8.2
不支持像以前版本那样发送消息列表。相反,send(ProducerRecord<K,V> record, Callback callback)
提供了一个回调。
但是您可以使用旧客户端,但不推荐这样做,因为据称新的 kafka 客户端比以前的客户端更快更好。
javaapi 下的生产者是旧的实现,已被客户端中的新实现所取代。新的生产者实现仍然可以将消息一起批处理,但会在后台执行此操作,并且在调用发送时你会得到每条消息的未来。
可以使用参数 "batch.size" 和 "linger.ms" 控制批量大小和延迟。有关详细信息,请参阅 documentation。