4

0.8生产者配置下的文档属性request.required.acks

值控制何时producer receives an acknowledgement来自经纪人。

典型值为

(1) 0,表示生产者从不等待经纪人的确认

(2) 1,表示producer gets an acknowledgementleader副本收到数据后

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

request.required.acks值为1. 作为producer.send(MessageKey)一个 void 我找不到任何选项来检索它。

4

1 回答 1

0

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

异步情况下的问题是您将不知道失败的批处理是否开始,因此如果您想稍后重试发送,将涉及一些猜测。

似乎有计划在未来的版本(> 0.8.0)中改进这一点。

于 2014-01-31T17:40:01.167 回答