正如新文档所暗示的那样,默认情况下,Kafka在使用High Level API时会自行处理偏移管理。但是当我按如下所示创建ConsumerConnector时,它仍然需要我提供zookeeper.connect属性。
_consumerConnector = Consumer.createJavaConsumerConnector(consumerConfig);
在这种情况下,管理胶印的仍然是动物园管理员吗?谢谢!
答案 0 :(得分:1)
截至Kafka 0.9
偏移量存储在特殊主题__consumer_offsets
中。但是,KafkaConsumer
仍然依赖于ZK(出于其他原因)。在将来的版本中,将完全删除对ZK的依赖。
答案 1 :(得分:0)
这看起来仍然是旧的高级消费者API。您仍然可以使用Kafka中的旧Scala消费者来管理偏移,但它需要将offsets.storage设置为Kafka并且您仍然需要zookeeper。
" new" consumer api是一个java api,确实使用Kafka进行偏移存储,并且不需要zookeeper连接配置。该api记录在案here。