个性化阅读
专注于IT技术分析

kafka控制台消费者(consumer)

本文概述

在本部分中,用户将学习消费者如何消费或阅读Kafka主题中的消息。

使用者采取了以下步骤来消费来自主题的消息:

步骤1:首先启动zookeeper和kafka服务器。

步骤2:在命令行中输入命令:“ kafka-console-consumer”。这将帮助用户从Kafka主题中读取数据并将其输出到标准输出。

注意:根据操作系统选择“ .bat”或“ .sh”。

高亮显示的文本表示消费者需要“引导服务器”才能连接到Kafka主题。同样,需要一个“ topic_id”来知道消费者将从哪个主题中读取消息。

步骤3:了解所有要求后,尝试使用以下命令使用主题中的消息:

‘kafka-console-consumer -bootstrap-server localhost:9092 -topic <topic_name>’。按回车。

注意:Bootstrap服务器是Kafka服务器,端口号= 9092。

在上一节中,针对此主题生成了三则消息。但是,在上面的快照中,可以看到0条消息。这是因为Apache Kafka不会阅读所有主题。 Kafka使用者将仅使用那些仅在使用者处于活动状态时才产生的消息。这可以归类为Apache Kafka的缺点。

让我们了解一下:

打开一个新的终端。启动Kafka控制台制作器。将两个生产者-消费者控制台保持在一起,如下所示:

现在,在生产者控制台中产生一些消息。之后,按Ctrl C并退出。

可以看出,生产者控制台当前生成的所有消息都反映在消费者控制台中。这是因为消费者处于活动状态。

读取完整消息

Apache Kafka可以产生数百万条消息。有时,消费者可能需要阅读特定主题的全部消息。

为此,请将“ -from-beginning”命令与上述kafka控制台使用者命令一起使用,如下所示:

‘kafka-console-consumer.bat -bootstrap-server 127.0.0.1:9092 -topic myfirst -from-beginning’。该命令告诉Kafka主题,以允许使用者从头开始(即从使用者不活动时开始)读取所有消息。

例如,

在上面的快照中,很明显,所有消息都是从头开始显示的。

注意:消息的顺序不是“总计”。这是因为该序列仅在分区级别(如Kafka简介部分所述)。

对于主题“ myfirst”,我们有三个分区。因此,如果用户希望查看订单,请创建具有单个分区值的主题。它将按顺序显示整个消息。

完成消息交换过程后,按“ Ctrl C”并停止。

因此,当用户希望消费者阅读时,可以从开始或从该状态开始消费多个消息。


赞(1)
未经允许不得转载:srcmini » kafka控制台消费者(consumer)

评论 抢沙发

评论前必须登录!