其他分享
首页 > 其他分享> > Kafka入门,下载,安装,配置,基本使用

Kafka入门,下载,安装,配置,基本使用

作者:互联网

 

Kafka基本概念

kafka是一个分布式的,分区的消息(官方称之为commit log)服务。它提供一个消息系统应该具备的功能,但是确有着独 特的设计。可以这样来说,Kafka借鉴了JMS规范的思想,但是确并没有完全遵循JMS规范。

Kafka中一些基本概念。


安装并配置kafka

安装和配置的步骤,可以参考下面的官网

http://kafka.apache.org/quickstart

下载,解压

wget https://mirrors.bfsu.edu.cn/apache/kafka/2.8.0/kafka_2.13-2.8.0.tgz
tar -zxvf kafka_2.13-2.8.0.tgz
cd kafka_2.13-2.8.0/
cd config/
vi server.properties

修改配置,注意修改如下,

broker.id=0 #当前broker的一个唯一身份标志
listeners=PLAINTEXT://192.168.0.101:9092 #生产者消费者通过下面的端口就行通信
log.dirs=/home/allen/packages/kafka_2.13-2.8.0/log/kafka-logs #log地址
zookeeper.connect=localhost:2181 #zookeeper的地址和端口

启动kafka

启动zookeeper

cd /home/allen/packages/apache-zookeeper-3.5.8-bin/bin
./zkServer.sh start
./zkCli.sh

启动kafka:

cd /home/allen/packages/kafka_2.13-2.8.0
./bin/kafka-server-start.sh -daemon config/server.properties

查看启动结果:

在zookeeper客户端查看zookeeper的变化:

创建主题 

创建一个主题名字为topic名字为AllenTest1

bin/kafka-topics.sh --create --zookeeper 192.168.0.101:2181 --replication-factor 1 --partitions 1 --topic AllenTest1

#zookeeper 192.168.0.101:2181 #zookeeper的通信地址
#replication-factor 1         #复制因子为1
#partitions 1                 #一个partitions
#AllenTest1                   #名字为AllenTest1

创建结果: 

删除主题:

bin/kafka‐topics.sh ‐‐delete ‐‐topic test ‐‐zookeeper 192.168.0.101:2181

发布消息:

bin/kafka-topics.sh --create --zookeeper 192.168.0.101:2181 --replication-factor 1 --partitions 1 --topic AllenTest1

bin/kafka-console-producer.sh --broker-list 192.168.0.101:9092 --topic AllenTest1
>Alle
>Allen1
>Allen2
>Allen3

消费消息:

如下kafka里面的消息是存在磁盘的,所以可以被重复消费,如下,可以被消费多次。

默认这些消息是保留一周的,可以配置修改。

bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.101:9092 --from-beginning --topic AllenTest1

cd kafka_2.13-2.8.0/
bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.101:9092 --from-beginning --topic AllenTest1
Alle
Allen1
Allen2
Allen3
[allen@localhost kafka_2.13-2.8.0]$ 
bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.101:9092 --from-beginning --topic AllenTest1
Alle
Allen1
Allen2
Allen3

 默认是消费最新的消息

bin/kafka‐console‐consumer.sh ‐‐bootstrap‐server 192.168.0.101:9092 ‐‐topic AllenTest1

bin/kafka-console-consumer.sh --bootstrap-server 192.168.0.101:9092 --topic AllenTest1
Allen4
Allen5

 

Kafka的Queue模式,单播消费

一条消息只能被某一个消费者消费的模式,类似queue模式,只需让所有消费者在同一个消费组里即可 分别在两个客户端执行如下消费命令,然后往主题里发送消息,结果只有一个客户端能收到消息

Kafka的发布订阅模式:

to be update ...

标签:bin,入门,0.101,--,192.168,kafka,sh,Kafka,下载
来源: https://blog.csdn.net/pengweismile/article/details/117534107