对于阅读的所有分区中的话题:消费和生产特别是卡夫卡分区的消息?
〜斌/ kafka-console-consumer.sh --zookeeper本地主机:2181 --topic myTopic --from-开始
- 我怎么能消耗特定的分区的话题? (例如使用分区键13)
- 以及如何在带有特定分区键的分区中生成消息?可能吗?
对于阅读的所有分区中的话题:消费和生产特别是卡夫卡分区的消息?
〜斌/ kafka-console-consumer.sh --zookeeper本地主机:2181 --topic myTopic --from-开始
您不能使用控制台使用者和生产者。但是您可以使用更高级别的客户端(使用任何适合您的语言)。
assign
方法是手动指派特定主题分区消耗(https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/consumer/KafkaConsumer.java#L906)Partitioner
覆盖分区的逻辑在那里你会手动决定如何分割你的邮件(https://github.com/apache/kafka/blob/trunk/clients/src/main/java/org/apache/kafka/clients/producer/ProducerConfig.java#L206-L208)有了许多可用的客户端,您可以指定分区号,就像serejja所述。
另请参阅https://github.com/cakesolutions/scala-kafka-client,它使用actors并为手动分区和偏移提供多种模式。
如果你想在终端上做同样的事情,我建议使用kafkacat。 (https://github.com/edenhill/kafkacat) 我在开发过程中的个人选择。
你可以做这样的事情
kafkacat -b localhost:9092 -f 'Topic %t[%p], offset::: %o, data: %s key: %k\n' -t testtopic
而对于一个特定的分区,你只需要使用-p
标志。