Kafka 消费者没有消费来自所有分区的消息

Man*_*anu 6 apache-kafka kafka-consumer-api

我创建了一个具有 10 个分区的 Kafka 主题,并尝试通过单个 kafka 消费者来消费消息。但是,kafka 消费者不会从所有分区读取消息。更具体地说,它仅使用来自 5 个特定分区的消息。 示例:消费者仅使用来自 [0,1,2,3,4] 的消息。重新启动后,如果它开始消费来自 [5,6,7,8 ,9] 的消息,那么它只会消费来自这些分区的消息。这是 kafka-consumer-offset-checker.sh 命令的输出

群组|主题| PID | 偏移| 日志大小| 滞后 | 所有者
GRP1 | 主题1 | 0 | 128 | 175 | 47 | 没有任何
GRP1 | 主题1 | 1 | 117 | 146 | 29 | 没有任何
GRP1 | 主题1 | 2 | 62 | 87 | 25 | 没有任何
GRP1 | 主题1 | 3 | 101 | 143 | 42 | 没有任何
GRP1 | 主题1 | 4 | 104 | 145 | 41 | 没有任何
GRP1 | 主题1 | 5 | 118 | 118 | 0 | 没有任何
GRP1 | 主题1 | 6 | 111 | 111 | 0 | 没有任何
GRP1 | 主题1 | 7 | 161 | 161 | 0 | 没有任何
GRP1 | 主题1 | 8 | 144 | 144 | 0 | 没有任何
GRP1 | 主题1 | 9 | 第171话 第171话 0 | 没有任何

有谁知道为什么会发生..?

Nat*_*yer 0

本周我在使用Spark Streaming读取具有 32 个分区的 kafka 主题时遇到了类似的问题。具体来说,我们使用 apache org.apache.spark.streaming.kafka010.*提供的 Spark kafka 流类。

我们只能从单个分区进行消费。问题是因为我们0.10.1.0在 jar 中包含了 kafka 版本。0.10.0.1即使我们的集群处于开启状态,也可以恢复修复它0.10.1.0