0

我将 MirrorMarker 2.0 与 Kafka 集群版本 2.4.1 一起使用。这是一个主动-主动配置,具有两个使用 MM 2.0 设置的集群,我正在尝试从复制到另一个集群的主题中读取。

我想在第二个集群中设置我的消费者组偏移量,以从第一个集群中上次提交的位置读取。为此,我使用 Kafka 镜像客户端 RemoteClusterUtils.translateOffsets() 方法。它需要三个参数,即 consumergroupid、ClusterAliasName 和 timeout。

TranslateOffsets 方法从 cluster.checkpoints.internal 主题中读取并返回一个映射 Map<TopicPartition, OffsetAndMetadata>,但该方法读取 checkpoints.internal 主题中的所有记录并尝试与消费者组匹配。这是一个非常缓慢的操作。如果有很多主题和多个消费者组,它将一一读取消息,然后填充地图。(如果给定非常高的超时时间,否则大多数时候它会返回一个空地图)

在 Kafka 2.4.1 版中使用 MM 2.0 时,还有其他方法可以设置消费者组偏移量吗?

4

0 回答 0