在linux上搭建kafka
单播消息多播消息
在linux上搭建kafka- 下载zookeeper到服务器解压缩修改配置文件启动zookeeper测试
#官网地址 https://www.apache.org/dyn/closer.cgi?path=/kafka/3.1.0/kafka_2.12-3.1.0.tgz #用wget命令下载 wget https://dlcdn.apache.org/kafka/3.1.0/kafka_2.13-3.1.0.tgz #解压缩 tar -zvcf kafka_2.13-3.1.0.tgz #进入解压文件夹 cd kafka_2.13-3.1.0 #文件夹结构如下 ls bin config libs LICENSE licenses logs NOTICE site-docs #修改配置文件 vim ./config/server.proprities #主要修改一下内容(根据实际情况修改) listeners=PLAINTEXT://127.0.0.1:9092 log.dirs=/tmp/kafka-logs #消息日志存放位置 zookeeper.connect=localhost:2181 #kafka依赖zookeeper 配置zookeeper的服务地址 #修改完毕启动kafka自带的zookeeper sudo ./bin/zookeeper-server-start.sh ../config/zookeeper.properties #启动kafka sudo ./bin/kafka-topics.sh --create --bootstrap-server 127.0.0.1:9092 --replication-factor 1 --partitions 1 --topic test #查看是否启动成功 ps -aux | grep -iE "kafka" #也可以进入到zookeeper里看 sudo ./bin/zookeeper-shell.sh 127.0.0.1:2181 ls /brokers/ids/ [0]
测试
#利用kafka-console-producer.sh 向topic发送消息 sudo ./kafka-console-producer.sh --bootstrap-server 127.0.0.1:9092 --topic test > test > hello > sallai #一行代表一个消息 #利用kafka-console-consume.sh 消费topic消息 #只消费启动之后的消息,启动之前的消息跳过 sudo ./kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test #从头消费消息 sudo ./kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --from-begining --topic test test hello sallai单播消息
消费者订阅同一个topic,但如果在听一个消费组内,只能有一个消费者消费该topic消息
#消费test topic 并加入testGroup组 sudo ./bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --consumer-property group-id=testGroup --topic test #上个命令执行两次,启动两个消费者 像topic发送消息观察接收情况,两个消费者只有一个可以消费到消息 #加入到不同的组会都能消费到消息多播消息
多播消息就是上述的消费组将不同的消费者加入到不同的消费组就可以实现多播消费消息



