将Kafka偏移量保存到外部存储的好处

问题描述 投票:1回答:1

我正致力于在Kafka重新平衡中保存消费者身份。我发现javadoc ConsumerRebalanceListener中的伪代码使用外部存储来保存偏移量。

我想知道:当使用外部存储而不是Kafka(Zookeeper或_consumer_offset)来管理偏移时,系统安全性或稳健性(不关心业务逻辑要求)是否有任何好处,例如:更好地处理网络问题?谢谢。

apache-kafka kafka-consumer-api
1个回答
1
投票

用于在Kafka之外存储偏移的主要用例是消费应用程序需要将偏移和消费/处理的消息存储在一起。这允许通过将两个值(偏移量和消息)组合在一起来对系统进行单次写入(希望是原子的)。

否则,应用程序有效地需要进行2次“写入”以将消息存储在外部系统中,然后将偏移存储到Kafka中。

这在Storing Offsets Outside KafkaKafkaConsumer javadoc部分有更详细的解释

© www.soinside.com 2019 - 2024. All rights reserved.