【发布时间】:2016-07-26 18:10:01
【问题描述】:
我们刚刚开始在我们的项目中使用 Kafka。我们正在使用 kafka_2.11-0.9.0.0。我有一些与 KafkaConsumer 相关的问题。
1) 我在启动 Zookeeper 和 Kafka 服务器之前启动了 Kafka Consumer,但我的 KafkaConsumer 客户端仍然能够连接。我有以下代码行
Consumer<String, String> consumer = new KafkaConsumer<String,String>(props);
consumer.subscribe(getConsumerRegisteredTopics());
while (true) {
ConsumerRecords<String, String> records = consumer.poll(Long.MAX_VALUE);
for (ConsumerRecord<String, String> record : records){
processRecord (record)
}
}
2) 我读到,Zookeeper 通过使用 poll(long timeout) 方法调用来跟踪活动的消费者。如果我使用 Long.MAX_VALUE 在 poll() 中超时,zookeeper 将如何跟踪我的消费者。能否请您帮助我了解 KafkaConsumer 民意调查调用的行为。
提前致谢。
【问题讨论】:
标签: apache-kafka long-polling kafka-consumer-api