Kafka点对点-发布订阅模型介绍(初级入门二)
一、Kafka命令行生产者发送消息和消费者消费消息创建topic./kafka-topics.sh --create --zookeeper xx.xx.xx.160:2181 --replication-factor 1 --partitions 2 --topic wnn-topic•查看topic./kafka-topics.sh --list --zookeeper xx.xx.xx.16
·
一、Kafka命令行生产者发送消息和消费者消费消息
创建topic
./kafka-topics.sh --create --zookeeper xx.xx.xx.160:2181 --replication-factor 1 --partitions 2 --topic wnn-topic
•查看topic
./kafka-topics.sh --list --zookeeper xx.xx.xx.160:2181
•生产者发送消息
./kafka-console-producer.sh --broker-list xx.xx.xx.160:9092 --topic wnn-topic
•消费者消费消息 ( --from-beginning:会把主题中以往所有的数据都读取出来, 重启后会有这个重复消费)
./kafka-console-consumer.sh --bootstrap-server xx.xx.xx.160:9092 --from-beginning --topic wnn-topic
•删除topic
./kafka-topics.sh --zookeeper xx.xx.xx.160:2181 --delete --topic wnn-topic
•查看broker节点topic状态信息
./kafka-topics.sh --describe --zookeeper xx.xx.xx.160:2181 --topic wnn-topic
二、Kafka点对点模型和发布订阅模型
JMS规范目前支持两种消息模型
点对点(point to point)
消息生产者生产消息发送到queue中,然后消息消费者从queue中取出并且消费消息
消息被消费以后,queue中不再有存储,所以消息消费者不可能消费到已经被消费的消息。 Queue支持存在多个消费者,但是对一个消息而言,只会有一个消费者可以消费
发布/订阅(publish/subscribe)
消息生产者(发布)将消息发布到topic中,同时有多个消息消费者(订阅)消费该消息。
和点对点方式不同,发布到topic的消息会被所有订阅者消费。
点对点的配置:
编辑消费者配置(确保同个名称group.id一样)
编辑 config/consumer.properties
•创建topic, 1个分区
./kafka-topics.sh --create --zookeeper xxx.xx.xx.160:2181 --replication-factor 1 --partitions 2 --topic t1
•指定配置文件启动 两个消费者
./kafka-console-consumer.sh --bootstrap-server xxx.xx.xx.160:9092 --from-beginning --topic t1 --consumer.config ../config/consumer.properties
•现象
只有一个消费者可以消费到数据,一个分区只能被同个消费者组下的某个消费者进行消费
发布订阅的配置:
编辑消费者配置(确保group.id 不一样)
编辑 config/consumer-1.properties
编辑 config/consumer-2.properties
•创建topic, 2个分区
./kafka-topics.sh --create --zookeeper xx.xx.xx.160:2181 --replication-factor 1 --partitions 2 --topic t2
•指定配置文件启动 两个消费者
./kafka-console-consumer.sh --bootstrap-server xx.xx.xx.160:9092 --from-beginning --topic t1 --consumer.config ../config/consumer-1.properties
./kafka-console-consumer.sh --bootstrap-server xx.xx.xx.160:9092 --from-beginning --topic t1 --consumer.config ../config/consumer-2.properties
•现象
◦两个不同消费者组的节点,都可以消费到消息,实现发布订阅模型
更多推荐
已为社区贡献5条内容
所有评论(0)