赞
踩
在B站尚硅谷学习Kafka时记录一下笔记,感兴趣的可以去看原视频
【尚硅谷Kafka教程,2024新版kafka视频,零基础入门到实战】
还记得这张图吗,我们已经启动了kafka,因为之前的操作都是在命令行完成的,我们继续用命令行进行一些操作,第一个就是topic的创建,毕竟kafka的发布订阅模式最主要的就是topic的使用了。
从bin/windows进入cmd,输入如下代码
- //kafka-topics.bat 这是windows目录下的一个bat文件,是自带的,
- //通过执行这个文件进行kafka的一些topic操作
- //--bootstrap-server localhost:9092 这是执行kafka操作必须的参数,
- //含义是连接kafka的哪个服务端,这里因为我们是本机启动,所以连接本地端口
- //这里的9092是kafka默认的端口号
- //--topic test 这是给新建的topic命名,这里的“test”就是本次创建的topic名称
- //--create 这是对topic执行什么操作,这里的含义就是创建
- // 所有参数的 -- 不要忘记
- kafka-topics.bat --bootstrap-server localhost:9092 --topic test --create
其中kafka的端口号可以在config目录下的server.properties文件里找到
回车执行后就会告诉创建完成
可能会因为jdk版本的不同,在执行这一语句后出现一大段日志,这也是正常的
在创建完成后可以继续输入
- //list 就是查看的意思
- kafka-topics.bat --bootstrap-server localhost:9092 --list
这就创建好一个topic了吗?Emmmm按照我们的进度现在这样就算结束了,其他更详细的创建操作后面会有(面包会有的,牛奶也会有的)
我们可以输入这段代码查看一下一个topic都会包含哪些信息
- //--describe 这是查看详情的命令
- kafka-topics.bat --bootstrap-server localhost:9092 --topic test --describe
- //--alter 修改的命令
- //--partitions 要修改的参数
- kafka-topics.bat --bootstrap-server localhost:9092 --topic test --alter --partitions 2
修改成他不会有返回,在查看详情可以发现partitionCount参数变成2了,而且下面有了两行topic,以后会解释这个操作完成了一个什么事
- //--delete 删除
- kafka-topics.bat --bootstrap-server localhost:9092 --topic test --delete
有眼尖的小伙伴可能发现kafka的窗口自动关闭了,而且如果这时我们在list一下查看操作,zk的窗口就会报错
这是因为windows系统毕竟不是kafka的目标系统,它是为了Linux准备的,所以我们进行删除操作时就会报错
这时在打开kfk窗口就会直接退出,坏了,kafka被玩崩了
这时候不要着急,只需要我们去到data文件夹,把zk和kfk文件删除就可以
这就相当于是给kafka重做了系统(果然重做系统可以解决百分百的问题)
因为之前删除topic了,现在需要重新建立一个,按照上文就好。
windows目录下的这两个批处理文件就是生产者和消费者
生产者和消费者其实不需要同时启动,因为之前提到过,生产者只会把消息提交给kafka,而消费者只会从kafka获取消息,他们之间是相互独立的。
现在我们在windows目录下开两个cmd窗口,先在第一个窗口输入
kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic test
出现这种情况就OK了
这时消费者就在等待生产者往kafka传数据了
在第二个窗口输入
kafka-console-producer.bat --bootstrap-server localhost:9092 --topic test
之后就可看到出现新的一行并且只有一个 “>” 符号
这时我们在生产者窗口输入内容并敲击回车,消费者就会自动获取内容了
至此 用命令行操作kafka就结束了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。