Apache kafka 最大in.flight.requests.per.connection卡夫卡生产者配置
我有一个关于max.in.flight.requests.per.connection kafka producer配置的问题。 此配置是应用于发送到代理的每个消息还是批处理中的所有消息 例如,若我的批处理大小为16KB,每条消息的大小为1KB,那个么批处理将有16条消息 如果max.in.flight.requests.per.connection值为1,则生产者是否会从该批发送一条消息,并等待确认,然后再从该批发送下一条消息 或Apache kafka 最大in.flight.requests.per.connection卡夫卡生产者配置,apache-kafka,Apache Kafka,我有一个关于max.in.flight.requests.per.connection kafka producer配置的问题。 此配置是应用于发送到代理的每个消息还是批处理中的所有消息 例如,若我的批处理大小为16KB,每条消息的大小为1KB,那个么批处理将有16条消息 如果max.in.flight.requests.per.connection值为1,则生产者是否会从该批发送一条消息,并等待确认,然后再从该批发送下一条消息 或 生产者将发送该批中的所有消息,并等待确认后再发送下一批?max
生产者将发送该批中的所有消息,并等待确认后再发送下一批?
max.in.flight.requests.per.connection(管道)
此属性在producer max.in.flight.requests.per.connection属性上配置<代码>此属性适用于整批邮件,而不是单个邮件。
max.in.flight.requests.per.connection=1意味着一批记录将被发送一次,并等待直到没有从代理收到响应为止
在阻塞之前,客户端将在单个连接上发送的最大未确认请求数。如果此设置大于1,则在生产者将分组的批发送到代理时使用管道
这提高了吞吐量,但如果发送失败,则存在由于重试(如果启用了重试)而导致无序交付的风险
还要注意,过度的流水线操作会降低吞吐量