【问题标题】:is kafka producer capable of sending multiple messages in a list?kafka 生产者能够在列表中发送多条消息吗?
【发布时间】:2015-07-08 20:24:55
【问题描述】:

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

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

【问题讨论】:

    标签: producer apache-kafka


    【解决方案1】:

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

    批量大小和延迟可以通过参数“batch.size”和“linger.ms”来控制。详情请见documentation

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2017-06-05
        • 1970-01-01
        • 2019-10-03
        • 1970-01-01
        • 2021-01-09
        • 2023-01-21
        • 2021-07-11
        相关资源
        最近更新 更多