【问题标题】:Kafka 0.8 producer, use of "request.required.acks" propertyKafka 0.8 生产者,使用“request.required.acks”属性
【发布时间】:2013-08-30 18:32:25
【问题描述】:

来自生产者配置下的0.8 Documentation 属性request.required.acks

值控制何时来自代理的producer receives an acknowledgement

典型值为

(1) 0,这意味着生产者从不等待经纪人的确认

(2) 1,表示leader replica收到数据后的producer gets an acknowledgement

(3) -1,表示producer gets an acknowledgement在所有同步副本都收到数据后

request.required.acks 的值为1 时,我如何在生产者中收到此确认。 producer.send(MessageKey) 是一个空白,我找不到任何选项来检索它。

【问题讨论】:

  • 只是猜测,但是如果发送没有收到确认可能会引发异常?

标签: message-queue apache-kafka


【解决方案1】:

生产者发送的 API 有很多不足之处,尤其是在异步模式下。这些确认对生产者对象的用户是隐藏的。如果他们失败了,你最终会看到一个异常。

异步情况下的问题是你不知道失败的批处理是从什么时候开始的,所以如果你想稍后重试发送,就会涉及一些猜测。

似乎有计划在未来的版本(> 0.8.0)中对此进行改进。

【讨论】:

    猜你喜欢
    • 2021-12-31
    • 2021-08-20
    • 1970-01-01
    • 2017-06-09
    • 1970-01-01
    • 1970-01-01
    • 2019-04-27
    • 2018-02-08
    • 1970-01-01
    相关资源
    最近更新 更多