kafka的架构和基本使用

2021-12-09  本文已影响0人  傻疯子

kafka是分布式高吞吐的基于发布订阅模式的消息队列,kafka利用磁盘顺序读写实现了高吞吐。

系统架构

topic:按业务情况进行分组的主题。
partition:分布式下的物理数据分区
producer:消息的生产者
consumer:消息的消费者,可以有多个consumer同时从多个不同的partition去消费。
consumer group:一个业务或一个用途的为一个consumer group,不同之间互不影响。
broker:kaka是分布式,每个节点的实际进程,一个节点一个。

kafka的使用

创建topic

bin/kafka-topics.sh --create --zookeeper localhost:2181  --partitions 5 --replication-factor 2 --topic kafka-topic-test

查看topic

bin/kafka-topics.sh --list --zookeeper localhost:2181

查看topic详细信息

bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic kafka-topic-test

删除topic,需要将server.propertie中的delete.topic.enable改为true,否则只会标记为删除状态

bin/kafka-topics.sh --delete --zookeeper localhost:2181 --topic kafka-topic-test

查看所有consumer group

bin/kafka-consumer-groups.sh --list  --bootstrap-server localhost:9092

查看具体consumer group

bin/kafka-consumer-groups.sh --describe  --bootstrap-server localhost:9092 --group con-1

修改分区数

bin/kafka-topics.sh --alter --zookeeper localhost:2181 --partitions 5 --topic kafka-topic-test

控制台生产者

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic kafka-topic-test

控制台消费者

//从最新开始消费
bin/kafka-console-consumer.sh --broker-list localhost:9092 --topic kafka-topic-test
//从头开始消费
bin/kafka-console-consumer.sh --broker-list localhost:9092 --topic kafka-topic-test --from-beginning
上一篇下一篇

猜你喜欢

热点阅读