二、kafka的环境部署+命令行
1、kafka的安装部署#
因为我这边只有一个阿里云服务器,且配置贼低,所以我就不部署集群,直接部署一个单机版的测试玩玩
1)新建soft文件夹,并将kafka的jar上传到该文件夹下#
2)解压压缩包,并将解压后的文件名改为 kafka#
tar -zxvf kafka_2.11-0.11.0.0.tgz mv kafka_2.11-0.11.0.0 kafka
3)在kafka文件下创建log文件夹#
4)备份并修改kafka的配置文件server.properties#
cp server.properties server.properties.back vim server.properties
修改内容参考如下:
本地做的修改主要是:
broker.id=0
delete.topic.enable=true
log.dirs=/soft/kafka/logs
zookeeper.connect=121.40.182.123:2181
5)启动 kafka#
bin/kafka-server-start.sh -daemon config/server.properties
6)查看kafka是否正常启动#
jps
2、kafka的命令行操作#
1)查看当前kafka服务器中的所有Topic#
bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --list
2)创建topic#
选项说明:
--topic 定义 topic 名
--replication-factor 定义副本数 (副本数不能超过 broker的数量)
--partitions 定义分区数
bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --create --topic first --replication-factor 1 --partitions 1
查看上述配置的logs文件夹,发现多了个first-0文件夹(主题+分区号)
===》 kafka的消息是存储到磁盘的
3)删除topic#
bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --delete --topic first
4)查看topic的详情#
bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --descripe --topic first
5)修改分区数#
bin/kafka-topics.sh --zookeeper 127.0.0.1:2181 --alter --topic first --partitions 6
6)发送消息#
bin/kafka-console-producer.sh --broker-list 127.0.0.1:9092 --topic first
7)消费消息#
bin/kafka-console-consumer.sh --zookeeper 127.0.0.1:2181 --topic first
上面这种消费方式,当生产者发送消息时,消费者不在线,然后消费者启动后,消费不到生产者刚刚发送的消息
--from-beginning:会将主题中以往的所有数据都消费到
bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --from-beginning --topic first
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?