我用的是Kafka0.8.2。正如文件所说:batch.num.messages指定:使用异步模式时一批中要发送的消息数。生产者将等待此数量的消息准备发送或达到queue.buffer.max.ms。request.required.acks控制代理对请求的确认。我想知道kafka broker是如何发送此确认的,它是针对批处理还是针对每个消息发送ack?
eivnm1vs1#
http://www.slideshare.net/miguno/apache-kafka-08-basic-training-verisign (幻灯片83):原始消息列表根据其目标分区/主题进行分区(如果使用默认分区器,则随机进行分区),即分成更小的批。每个拆分后的批处理都被发送到各自的leader broker/isr(单个send()按顺序发生),并且每个批处理都由各自的leader broker根据request.required.acks进行确认
1条答案
按热度按时间eivnm1vs1#
http://www.slideshare.net/miguno/apache-kafka-08-basic-training-verisign (幻灯片83):
原始消息列表根据其目标分区/主题进行分区(如果使用默认分区器,则随机进行分区),即分成更小的批。每个拆分后的批处理都被发送到各自的leader broker/isr(单个send()按顺序发生),并且每个批处理都由各自的leader broker根据request.required.acks进行确认