在官方的卡夫卡汇合中,这就是高级消费者的写作方式。
https://cwiki.apache.org/confluence/display/KAFKA/Consumer+Group+Example
具体来说,我们在一个分区下创建多个流来使用。
Map<String, List<KafkaStream<byte[], byte[]>>> consumerMap = consumer.createMessageStreams(topicCountMap);
随后,我们在ConsumerTest中迭代每个流。我想了解手动提交在这种情况下如何工作?手动提交由consumerConnector.commitOffsets()
我们正在通过多个流消费,而且所有这些流都是通用的。第一个问题是commitOffsets如何工作?是否会在所有流中提交?如果是这样,只有一个流使用手动提交的方式?我正在使用kafka 0.8.2.2