1是消费者连接topic 消费消息的命令。
2是生产者连接topic 推送消息的命令。
3分别是启动和停止kafka服务的。
4是操作topic 的指令,比如查看topic 列表或者删除topic
5分别是启动和停止zookeeperd服务,这里的zookeeper 是kafka 自带的。
我们再来看看config 里面的文件。我们主要就用到server.propertie 和zookeeper.properties
server.propertie
server.propertie 是启动kafka 时加载的配置文件。点击去看看,基本要改的就是下面这两个地方。
每一个broker都需要一个标识符,使用broker.id来表示。它的默认值是0,也可以被设置成任意其它整数。这个值在整个kafka集群里必须是唯一的。这个值可以任意选定。我这里设置的broker.id=1
还有kafka 默认启动服务的默认端口是9092.如果我们想要修改的话,就需要在server.propertie 中加上
port = 9093
当然改了这里,还得改其他对应配置文件的连接。这里是网上截图的。
zookeeper.properties
zookeeper.connect 主要配置 zookeeper的链接。如果我们在其他地方安装的zookeeper ,就需要修改这里的配置了。
zookeeper.properties 文件是启动kafka 自带的zookeeper 时加载的配置。
里面的配置就比较少了,主要是
libs 文件夹是kafka 运行依赖的jar 包,我们可以不用管,logs是kafka 运行产生的日志,我们排查问题时用到,暂时也不用管。
===================================================================
我们按顺序来,因为kafka 启动要依赖zookeeper服务。所以我们来看zookeeper的命令。
启动zookeeper 服务
bin/zookeeper-server-start.sh ./config/zookeeper.properties
停止zookeeper 服务
bin/zookeeper-server-stop.sh
启动好zookeeper 后,我们来启动kafka 服务。
bin/kafka-server-start.sh ./config/server.properties
关闭kafka 服务命令
bin/kafka-server-stop.sh
启动好kafka 服务后,我们就可以创建topic 啦。创建topic的命令
bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test1
这里可以看到创建topic 的命令算是比较复杂的, --zookeeper localhost:2181是指定zookeeper 服务。-replication-factor是指创建分区。
partitions 是创建备份。test1是topic 名称。
我们在创建一个tpoic test2. 然后查看topic 列表,需要指定zookeeper 连接
bin/kafka-topics.sh --list --zookeeper localhost:2181
删除一个topic,需要指定zookeeper 和删除的topic
bin/kafka-topics.sh --delete --topic quellanan --zookeeper localhost:2181
我们已经创建了topic 。接下来我们可以让生产者推送消息到这个topic 上。
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test1
–broker-list localhost:9092 连接上指定的kafka 服务器。
生产者生产了消息,接下来就需要消费者消费消息啦。
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test1 --from-beginning
–bootstrap-server localhost:9092 是连接特定的kafka 服务
–from-beginning 读取历史未消费的数据。
==================================================================================
上面哪些都是在服务器上操作的,所以接下来我们需要在我们代码中使用kafka ,主要是推送消息和消费消息。
这里由于我们kafka 部署在服务器上,不是我们本地,所以需要kafka 配置文件中设置远程访问。主要修改config/server.properties
listeners=PLAINTEXT://:9092
advertised.listeners=PLAINTEXT://192.168.1.51:9092
zookeeper.connect=192.168.1.51:2181
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
最后
我还为大家准备了一套体系化的架构师学习资料包以及BAT面试资料,供大家参考及学习
已经将知识体系整理好(源码,笔记,PPT,学习视频)
会持续更新**
如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Java)
[外链图片转存中…(img-5Dc1OyVJ-1711703920614)]
最后
我还为大家准备了一套体系化的架构师学习资料包以及BAT面试资料,供大家参考及学习
已经将知识体系整理好(源码,笔记,PPT,学习视频)
[外链图片转存中…(img-18wsu6X2-1711703920615)]
[外链图片转存中…(img-UcU6r3sU-1711703920615)]
[外链图片转存中…(img-paT2mS1Y-1711703920616)]