当前位置: 首页 > news >正文

Kafka 操作流程(零基础完整流程)

今天我们不讲复杂理论。直接从启动 Kafka ↓ 创建 Topic ↓ 发送消息 ↓ 消费消息完整走一遍。你学完至少会真正把 Kafka 跑起来一、Kafka 整个流程图先建立概念Kafka 最核心流程生产者发消息 ↓ Topic存消息 ↓ 消费者读消息例如Go程序 ↓ 发送 hello ↓ Kafka保存 ↓ 另一个Go程序读取二、第一步安装 Docker因为现在Kafka 一般都用 Docker 跑。先测试docker-v如果输出Docker version xxx说明 Docker 正常。三、第二步下载 Kafka 镜像dockerpull bitnami/kafka四、什么是镜像镜像你可以理解成Kafka 安装包五、第三步启动 Kafka 容器重点执行dockerrun-d\--namekafka\-p9092:9092\-eKAFKA_CFG_NODE_ID1\-eKAFKA_CFG_PROCESS_ROLESbroker,controller\-eKAFKA_CFG_CONTROLLER_LISTENER_NAMESCONTROLLER\-eKAFKA_CFG_LISTENERSPLAINTEXT://:9092,CONTROLLER://:9093\-eKAFKA_CFG_ADVERTISED_LISTENERSPLAINTEXT://localhost:9092\-eKAFKA_CFG_CONTROLLER_QUORUM_VOTERS1localhost:9093\-eALLOW_PLAINTEXT_LISTENERyes\bitnami/kafka六、这里到底发生了什么Docker会创建 Kafka 容器 ↓ 启动 Kafka 服务七、查看 Kafka 是否启动成功dockerps如果看到kafka说明成功。八、9092 是什么Kafka 默认端口9092以后Go 程序连接localhost:9092就是连接 Kafka。九、第四步创建 Topic重点Kafka消息必须放进Topic里面。十、Topic 是什么Topic你可以理解成消息分类例如订单消息 日志消息 用户消息十一、创建 Topic执行dockerexec-itkafka kafka-topics.sh\--create\--topicorder-topic\--bootstrap-server localhost:9092十二、命令详细解析docker exec进入容器执行命令kafka-topics.shKafka Topic 管理工具。–create表示创建 Topic–topic order-topicTopic 名字order-topic–bootstrap-server连接 Kafka。十三、查看 Topic执行dockerexec-itkafka kafka-topics.sh\--list\--bootstrap-server localhost:9092十四、如果看到order-topic说明Topic 创建成功。十五、第五步发送消息Producer现在开始发消息。十六、启动生产者执行dockerexec-itkafka kafka-console-producer.sh\--topicorder-topic\--bootstrap-server localhost:9092十七、现在终端会卡住这是正常的。因为Kafka正在等待你输入消息十八、输入消息例如hello回车。再输入world十九、这些消息去哪了Kafka已经存进 order-topic了。二十、第六步消费消息Consumer再开一个终端。二十一、启动消费者执行dockerexec-itkafka kafka-console-consumer.sh\--topicorder-topic\--from-beginning\--bootstrap-server localhost:9092二十二、会发生什么终端会打印hello world二十三、完整流程重点你现在已经真正完成生产者 ↓ 发送消息 ↓ Kafka Topic ↓ 消费者读取这就是Kafka 最核心流程。二十四、为什么生产者和消费者是两个终端因为真实项目它们本来就是两个不同程序例如订单系统负责发送消息库存系统负责读取消息二十五、第七步Go 操作 Kafka真正开发不会手敲命令。而是Go代码操作Kafka二十六、安装 Go Kafka 库go get github.com/segmentio/kafka-go二十七、Go 发送消息生产者producer.gopackagemainimport(contextfmtgithub.com/segmentio/kafka-go)funcmain(){// 创建生产者w:kafka.NewWriter(kafka.WriterConfig{Brokers:[]string{localhost:9092},Topic:order-topic,})// 发消息err:w.WriteMessages(context.Background(),kafka.Message{Value:[]byte(hello kafka),},)iferr!nil{panic(err)}fmt.Println(发送成功)}二十八、运行生产者go run producer.go二十九、Kafka 里已经有消息了现在消费者就能读到。三十、Go 消费消息消费者consumer.gopackagemainimport(contextfmtgithub.com/segmentio/kafka-go)funcmain(){// 创建消费者r:kafka.NewReader(kafka.ReaderConfig{Brokers:[]string{localhost:9092},Topic:order-topic,GroupID:g1,})for{// 读取消息msg,err:r.ReadMessage(context.Background())iferr!nil{panic(err)}fmt.Println(string(msg.Value))}}三十一、运行消费者go run consumer.go三十二、消费者会打印hello kafka三十三、现在你已经真正会 Kafka 了你已经掌握Kafka 启动dockerrun创建 Topickafka-topics.sh发送消息kafka-console-producer.sh或者WriteMessages()消费消息kafka-console-consumer.sh或者ReadMessage()三十四、真实项目中的 Kafka 流程真实开发最经典就是用户下单订单服务发 Kafka 消息Kafka负责存消息其他服务消费库存短信推荐邮件三十五、Kafka 为什么重要因为现代后端越来越微服务化系统之间不再直接调用而是通过 Kafka 通信三十六、最后一句总结必须记住Kafka 最核心操作流程启动 Kafka ↓ 创建 Topic ↓ Producer 发消息 ↓ Topic 存消息 ↓ Consumer 读消息真正重要先掌握发 收别一开始研究Partition Offset 副本机制容易直接劝退。
http://www.rkmt.cn/news/1372924.html

相关文章:

  • 2026年工程蜂窝板优选:剖析湖北尚美建材有限公司的直销价值与定制实力 - 2026年企业推荐榜
  • 保险领域AutoML实战:从数据不平衡到模型部署的端到端解决方案
  • 高质量测试 Skill 编写手册 -- 渐进式披露
  • 面试最后 5 分钟,别只会说“我没有问题了”
  • 2026离心式油雾过滤器优质厂家推荐:高效油雾过滤器、CNC油雾净化器、切削液油雾净化器、小型油雾过滤器、工业油雾过滤器选择指南 - 优质品牌商家
  • 上海离婚房产被抢?马赛男:专办千万级疑难房产分割案 - 外贸老黄
  • 架构设计师 | 奠基之石:深入浅出,掌握系统工程五大方法论
  • AI低代码开发平台权威评测:智能低代码平台/智能问数/私有化AI低代码/私有部署智能体/零代码/AIagent/选择指南 - 优质品牌商家
  • Nuxeo平台安全加固实践指南:认证强化与权限最小化
  • 全域视频跨镜智能追踪 煤矿作业人员全程轨迹溯源
  • 评测全网10款主流降AI率工具:帮你锁定真正好用靠谱的一款
  • 2026年AI论文工具实测排行,哪款真正适合顺利通关?
  • 构建高效的 Agent 任务队列
  • DeepSeek LeetCode 2617. 网格图中最少访问的格子数 TypeScript实现
  • 使用Python快速接入Taotoken并实现第一个聊天机器人
  • 一文讲透|降AIGC平台测评:2026 最新好用工具推荐与对比
  • 4.2 文件误删除的恢复:PE + EasyRecovery / DiskGenius 实战流程
  • 设计模式实战解读(二):工厂模式——对象创建的解耦艺术
  • 加密流量分析:从TLS握手明文到行为建模的实战指南
  • DeepSeek-R1在火山引擎部署的7大避坑指南:从环境配置到GPU显存优化,一线工程师亲授
  • 哪家工程信息平台专业?2026年5月推荐TOP5评测数据覆盖广防漏单特点选择指南 - 品牌推荐
  • 国防军工涉密网络全光网设备定制化推荐:电话光端机/管理型光纤收发器/综合多业务光端机/视频光端机/视频综合业务光端机/选择指南 - 优质品牌商家
  • DeepSeek LeetCode 2608. 图中的最短环 C语言实现
  • Qwen模型 LeetCode 2608. 图中的最短环 Java实现
  • 井下巷道无感精准定位 作业人员在岗离岗智能甄别
  • 【ChatGPT小红书爆款文案公式】:20年AI内容专家亲授3步生成高互动率文案(附17个真实转化数据)
  • 北京游学机构哪家好?求推荐孩子独立研学北京,安全有保障的机构 - 品牌2025
  • 深度学习篇---NVIDIA TensorRT
  • 深度学习篇---张量
  • 【仅剩72小时生效】DeepSeek最新v3.2.1热补丁:强制启用动态批处理+量化缓存,立省GPU开销29%