当消费者从组中退出并触发重新平衡时,我知道没有消息被消耗 -
但是对消息的进行中请求是否超过了最大等待时间?
或者 Kafka 是否在重新平衡期间发回任何有效负载?
更新
为了澄清起见,我特指消费者投票过程。
根据我的理解,当其中一个消费者从消费者组中退出时,会执行分区到消费者的重新平衡。
在重新平衡期间,如果已经轮询并等待最大时间过去,是否会将错误发送回消费者?
或者 Kafka 是否等待最长时间并发送空负载?
或者 Kafka 是否将请求排队等待最大等待时间,直到重新平衡完成?
底线 - 我试图解释消费者的周期性超时。
这可能在文档中,但我不确定在哪里可以找到它。
答案 0 :(得分:0)
Kafka 生产者不会直接向他们的消费者发送消息,而是将消息发送给代理。
飞行中的请求对应于生产者而不是消费者。
消费者是否离开一个组并触发重新平衡对于生产者的行为来说是无关紧要的。
生产者消息在缓冲区中排队、批处理、可选压缩并根据配置发送到 Kafka 代理。
<块引用>进行中的请求是未确认请求的最大数量 客户端将在阻塞之前在单个连接上发送。
请注意,当我们说 ack 时,它是经纪人的确认,而不是消费者的确认。
<块引用>Kafka 是否在重新平衡期间发回任何负载?
Kafka 代理不会将任何重新平衡通知其生产者。