Kafka 消息的生产和消费

Kafka 消息的生产和消费,第1张

Kafka 消息的生产和消费

kafka基本概念

Broker:    消息中间件的处理节点,一个kafka节点就是一个broker
Topic:    用于对消息进行归类,每条消息都要指定一个Topic
Producer: 消息生产者,向broker发送消息
Consumer: 消息消费者,从broker读取消息

发送消息

kafka自带一个producer命令客户端,可以从本地读取内容,也可以直接在命令行输入内容,输入内容以消息的形式发送到kafka集群中,输入的每一行内容当作一个独立的消息。使用kafka 发送消息的客户端producer,指定kafka服务器地址、指定Topic发送消息:

输入 a b c 三个消息
$ bin/kafka-console-producer.sh --broker-list 10.20.30.40:9092 --topic hello
>a
>b
>c

消费消息

kafka同样携带consumer命令客户端,可以在命令行指定kafka服务器地址、指定Topic来消费kafka中的消息,默认是消费最新的消息,可添加参数 --from-beginning 从头消费

一、从当前主题的最后一条消息的offset(偏移量位置)+1开始消费

$ bin/kafka-console-consumer.sh --bootstrap-server 10.20.30.40:9092  --topic hello

二、从当前主题的第一条消息开始消费

$ bin/kafka-console-consumer.sh --bootstrap-server 10.20.30.40:9092 --from-beginning --topic hello
a
b
c

关于消息的细节

消息的特性:
1.消息是顺序存储的   2.消息是有偏移量的  3.消费时可以指明偏移量进行消费

生产者将信息发送给broker,broker会将消息保存在kafka本地的日志文件中(配置文件中log.dirs指定的目录下)

ll /tmp/kafka-logs/hello-0/
total 8
-rw-r--r-- 1 root root 10485760 Jan 11 01:49 00000000000000000000.index
-rw-r--r-- 1 root root      495 Jan 11 03:22 00000000000000000000.log   
-rw-r--r-- 1 root root 10485756 Jan 11 01:49 00000000000000000000.timeindex
-rw-r--r-- 1 root root        8 Jan 11 01:49 leader-epoch-checkpoint

#/tmp/kafka-logs 是log.dir指定的文件、hello是topic、-0是分区
#存储消息的文件为 00000000000000000000.log

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5706675.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存