Apache kafka Kafka Streams:在至少使用一次_时,是否可以保证将存储排序到状态存储?
我们有一个用处理器API构建的Kafka Streams Java拓扑 在拓扑结构中,我们只有一个处理器,可以保存到多个状态存储 当我们至少使用一次时,我们希望看到状态存储之间存在一些不一致的情况,例如,传入的记录会导致写入状态存储A和B,但存储之间的崩溃只会导致写入Kafka更改日志主题的存储AApache kafka Kafka Streams:在至少使用一次_时,是否可以保证将存储排序到状态存储?,apache-kafka,apache-kafka-streams,Apache Kafka,Apache Kafka Streams,我们有一个用处理器API构建的Kafka Streams Java拓扑 在拓扑结构中,我们只有一个处理器,可以保存到多个状态存储 当我们至少使用一次时,我们希望看到状态存储之间存在一些不一致的情况,例如,传入的记录会导致写入状态存储A和B,但存储之间的崩溃只会导致写入Kafka更改日志主题的存储A 我们是否保证保存的顺序也将是写入状态存储的顺序?例如,如果我们先保存到存储A,然后保存到存储B,我们当然会出现写入两个更改日志成功的情况,以及只有写入更改日志A已完成的情况,但我们是否也会出现只有写入
eaxctly\u once
可以跨多个状态存储进行原子写入
调用stream.commit()时,将按顺序执行以下步骤:
eaxctly\u once
可以跨多个状态存储进行原子写入
调用stream.commit()时,将按顺序执行以下步骤:
没有至少一次的订购担保。-常规的重新平衡不应该有任何影响,因为在重新平衡时,首先所有的处理都已完成(即,已刷新的存储和已提交的输入主题偏移)。与您描述的其他场景类似(如果您正确配置了代理和应用程序),这些错误“new broker partition leader”或“offset commit failed”应该在后台处理,而不是影响订单。没有至少一次的订单保证。-常规的重新平衡不应该有任何影响,因为在重新平衡时,首先所有的处理都已完成(即,已刷新的存储和已提交的输入主题偏移)。与您描述的其他场景类似(如果您正确配置了代理和应用程序),这些错误“new broker partition leader”或“offset commit failed”应该在后台处理,而不是影响订单。