在Kafka流中的处理配置曾经确实读取仅读取读数



有一系列关于Kafka交易的精彩文章,恰好交货一次。
在其中一个人中,作者对消费者说:

因此,在消费者方面,您有两个通过``Inlyvel.Level''消费者config:

表示的读取交易消息的选项。

read_committing:除了读取不是交易的一部分的消息之外,还能够读取那些之后的消息 交易是为了承诺。

read_uncommitten:以偏移顺序读取所有消息,而无需等待交易的投入。此选项类似于 卡夫卡消费者的当前语义。

也就是说,普通的消费者应用程序必须指定 read_committed,如果唯一要读取commit从该主题写入commit。

但是关于kafka流:

您需要将流申请精确到一次 语义是设置此config" processing.guarantee = extry_once"。 这导致所有处理完全发生。这 包括制作处理以及所有实现的 由写回Kafka的处理作业创建的状态, 正是一次。

关于kstream中的读物的明确说明。当配置exactly_once

是的,kStream只会读取订单的消息,文档中并未清楚地说明,但是在streamsconfig javadoc中,您会找到信息:

如果" processing.guarantee"设置为"恰好_once",则KAFKA流不允许用户覆盖以下属性(括号中显示的流设置(: "隔离。级别"(read_committit( - 消费者将始终仅读取指定的数据 " enable.idempotence"(true( - 生产者将始终启用势力 " max.in.flight.requests.per.connection"(5( - 生产者将始终每个连接有一个飞行请求

相关内容

  • 没有找到相关文章

最新更新