小编Gna*_*rik的帖子

Kafka突然重置消费者Offset

我正在使用 Kafka 0.8 和 zookeeper 3.3.5。实际上,我们有十几个主题正在消费,没有任何问题。

最近,我们开始喂食和消费一个行为怪异的新话题。消耗的偏移量突然重置。它尊重我们设置的 auto.offset.reset 策略(实际上是最小的),但我不明白为什么这个话题突然重置了它的偏移量。

我正在使用高级消费者。

这是我发现的一些错误日志: 我们有一堆这样的错误日志:

[2015-03-26 05:21:17,789] INFO 从代理 id:1,host:172.16.23.1,port:9092 获取元数据,1 个主题的相关 id 为 47 Set(MyTopic) (kafka.cl)
ient.ClientUtils$)
[2015-03-26 05:21:17,789] ERROR Producer 连接到 172.16.23.1:9092 不成功(kafka.producer.SyncProducer)
java.nio.channels.ClosedByInterruptException
        在 java.nio.channels.spi.AbstractInterruptibleChannel.end(AbstractInterruptibleChannel.java:202)
        在 sun.nio.ch.SocketChannelImpl.connect(SocketChannelImpl.java:681)
        在 kafka.network.BlockingChannel.connect(BlockingChannel.scala:57)
        在 kafka.producer.SyncProducer.connect(SyncProducer.scala:141)
        在 kafka.producer.SyncProducer.getOrMakeConnection(SyncProducer.scala:156)
        在 kafka.producer.SyncProducer.kafka$producer$SyncProducer$$doSend(SyncProducer.scala:68)
        在 kafka.producer.SyncProducer.send(SyncProducer.scala:112)
        在 kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:53)
        在 kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:88)
        在 kafka.consumer.ConsumerFetcherManager$LeaderFinderThread.doWork(ConsumerFetcherManager.scala:66)
        在 kafka.utils.ShutdownableThread.run(ShutdownableThread.scala:51)

每次发生此问题时,我都会看到 WARN 日志:

[2015-03-26 05:21:30,596] 警告由于套接字错误而重新连接:空(kafka.consumer.SimpleConsumer)

然后真正的问题发生了:

[2015-03-26 05:21:47,551] INFO 连接到 172.16.23.5:9092 进行生产(kafka.producer.SyncProducer)
[2015-03-26 05:21:47,552] INFO 从 172.16.23.5:9092 断开连接 (kafka.producer.SyncProducer)
[2015-03-26 05:21:47,553] 信息 [ConsumerFetcherManager-1427047649942] 为分区 …

java producer-consumer apache-kafka kafka-consumer-api apache-zookeeper

5
推荐指数
1
解决办法
1万
查看次数