Kafka 控制台 Console

在本节中,用户将了解消费者如何消费或读取来自 Kafka 主题的消息。

那里消费者采取以下步骤来消费来自主题的消息:

步骤 1: 最初启动 zookeeper 和 kafka 服务器。

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

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

Kafka Console Consumer

突出显示的文本表示'bootstrap-server'消费者需要连接到 Kafka 主题。此外,需要一个"topic_id"才能知道消费者将从哪个主题读取消息。

步骤 3: 了解所有要求后,尝试使用来自某个主题的消息使用命令:

'kafka-console-consumer-bootstrap-server localhost:9092-topic '。按回车键。

注意: 引导服务器是Kafka服务器,端口号=9092、

Kafka Console Consumer

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

让我们理解:

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

Kafka Console Consumer

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

Kafka Console Consumer

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

读取整个消息

Apache Kafka 允许生成数百万条消息。有时,消费者可能需要读取来自特定主题的完整消息。

为此,请使用"-from-beginning"命令和上述 kafka 控制台消费者命令:

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

例如

Kafka Console Consumer

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

注意: 消息的顺序不是"总数"。这是因为序列仅在分区级别(如 Kafka 介绍部分所研究)。

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

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

因此,可以从一开始就消费几条消息或者当用户希望消费者阅读时从那个状态开始。

通常,Kafka 消费者属于特定的消费者组。消费者组基本上代表应用程序的名称。为了消费消费者组中的消息,使用'-group'命令。让我们看看消费者如何消费来自Kafka主题的消息:步骤 1: 打开 Windows 命令 ...