专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

Kafka订阅模式常用命令详解

一、kafka创建和查看topic,生产消费者

1.创建topic

root@kafka-p-7vwrm-cp-kafka-0:/# kafka-topics --create --zookeeper kafka-p-7vwrm-cp-zookeeper:2181  --replication-
Created topic test1.

2.查看Topic

root@kafka-p-7vwrm-cp-kafka-0:/# kafka-topics --zookeeper kafka-p-7vwrm-cp-zookeeper:2181 --list 
__confluent.support.metrics
__consumer_offsets
_confluent-ksql-kafka-p-7vwrm_command_topic
_schemas
kafka-p-7vwrm-cp-kafka-connect-config
kafka-p-7vwrm-cp-kafka-connect-offset
kafka-p-7vwrm-cp-kafka-connect-status
test1
root@kafka-p-7vwrm-cp-kafka-0:/# kafka-topics --zookeeper kafka-p-7vwrm-cp-zookeeper:2181 --topic test1 --describe 
Topic:test1 PartitionCount:1    ReplicationFactor:1 Configs:
    Topic: test1    Partition: 0    Leader: 1   Replicas: 1 Isr: 1

3.模拟生产者产生消息

root@kafka-p-7vwrm-cp-kafka-0:/#kafka-console-producer --broker-list localhost:9092 --topic test1
>hello world
>

4.模拟消费者接收消息

root@kafka-p-7vwrm-cp-kafka-0:/# kafka-console-consumer --bootstrap-server localhost:9092 --topic test1 --from-beginning
hello world

注:

  • 1)若producer 和 consumer 两个窗口同时打开,在producer输入信息,consumer会立即消费信息并打印在终端
  • 2)新开一个终端,去消费同一个topic,刚刚已经消费过的消息还会被新终端继续消费。也就是说,消息被消费过后不会立即被删除。

5.消费者组

(1)一个生产者,两个同组消费者
  • 生产者:
root@kafka-p-7vwrm-cp-kafka-0:/# kafka-console-producer --broker-list localhost:9092 --topic test1
>123456
>

  • 消费者1:
root@kafka-p-7vwrm-cp-kafka-0:/# kafka-console-consumer --bootstrap-server localhost:9092 --topic test1 --group testgroup

  • 消费者2:
root@kafka-p-7vwrm-cp-kafka-0:/# kafka-console-consumer --bootstrap-server localhost:9092 --topic test1 --group testgroup
123456

(2)一个生产者,两个不同组的消费者
  • 生产者:
root@kafka-p-7vwrm-cp-kafka-0:/# kafka-console-producer --broker-list localhost:9092 --topic test1
>654321
>

  • 消费者1:
root@kafka-p-7vwrm-cp-kafka-0:/# kafka-console-consumer --bootstrap-server localhost:9092 --topic test1 --group testgroup
654321

  • 消费者2:
root@kafka-p-7vwrm-cp-kafka-0:/# kafka-console-consumer --bootstrap-server localhost:9092 --topic test1 --group testgroup1
654321

总结:

  • 一个消费者只能属于一个消费者组
  • 消费者组订阅的topic只能被其中的一个消费者消费
  • 不同消费者组中的消费者可以消费同一个topic

6.查看某个topic在消费组的情况

root@kafka-p-7vwrm-cp-kafka-0:/# kafka-consumer-groups  --bootstrap-server localhost:9092 --group testgroup --describe 

GROUP           TOPIC           PARTITION  CURRENT-OFFSET  LOG-END-OFFSET  LAG             CONSUMER-ID                                     HOST            CLIENT-ID
testgroup       test1           0          5               5               0               consumer-1-f6565668-b2cb-4427-9d59-0da3bab5ab11 /10.42.2.12     consumer-1
root@kafka-p-7vwrm-cp-kafka-0:/# 

肺炎猖狂,在家闭关!最近,会持续更新自己前期整理的学习资料,大家如果感兴趣的,请点赞,加关注

文章永久链接:https://tech.souyunku.com/44257

未经允许不得转载:搜云库技术团队 » Kafka订阅模式常用命令详解

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们