来自生产者配置下的0.8文件属性request.required.acks
值控制来自代理的
producer receives an acknowledgement。 典型的值是 (1) 0,这意味着生产者从不等待经纪人的确认。 (2) 1,这意味着领导者复制后的producer gets an acknowledgement已经收到数据。 (3) -1,这意味着producer gets an acknowledgement在所有同步副本之后都收到了数据。
当request.required.acks值为1时,如何在producer中接收此确认。producer.send(MessageKey)是一个空白,我找不到任何选项来检索它。
发布于 2014-01-31 17:40:01
生产者发送的API还有很多不理想之处,特别是在异步模式下。这些漏洞对生产者对象的用户是隐藏的。如果他们失败了,你最终会看到一个例外。
异步示例中的问题是,您将不知道是否已开始失败的批处理,因此,如果您希望稍后重试发送,将涉及一些猜测。
似乎有计划在以后的版本中改进这一点(> 0.8.0)。
https://stackoverflow.com/questions/18475125
复制相似问题