我正在使用 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