【发布时间】:2020-06-17 17:19:40
【问题描述】:
关于消息的“承诺”概念经常令人困惑。我遇到了这个,从 https://www.confluent.io/blog/hands-free-kafka-replication-a-lesson-in-operational-simplicity/
只有在成功复制到消息后才会提交消息 所有同步的副本。
我猜这里的“全部”是指依赖于复制因子的所有副本。比如说,如果复制因子是 3 ,消费者要消费这条消息,消息应该出现在所有副本(不一定是磁盘?)中,而与“acks”设置无关。希望我的理解是正确的。
在这个时间点,因为我们不是生活在理想的世界里,每件事都按预期工作:-) - 其中一个代理已关闭,消息由生产者发送 - 假设此消息已确认但未确认完全“承诺”,因为一个经纪人倒闭了。
假设这个代理不会永远出现(replica.lag.time.max.ms - 这个值也失效了),我们可以假设消费者默认不能收到这个消息吗?
【问题讨论】:
标签: apache-kafka confluent-platform