Kafka05-入门-尚硅谷

1-Kafka入门-尚硅谷

按"概念→安装→操作→开发"顺序组织,答案力求一句话说清。

### 文章目录

  • [1-Kafka入门-尚硅谷](#文章目录 1-Kafka入门-尚硅谷 @[toc] 1. Kafka 基础概念 2. 环境安装(Windows单机) 3. 主题操作(命令行) 4. 生产与消费 5. 源码阅读(可选) 6. 记忆口诀)
  • [@[toc]](#文章目录 1-Kafka入门-尚硅谷 @[toc] 1. Kafka 基础概念 2. 环境安装(Windows单机) 3. 主题操作(命令行) 4. 生产与消费 5. 源码阅读(可选) 6. 记忆口诀)
  • [1. Kafka 基础概念](#文章目录 1-Kafka入门-尚硅谷 @[toc] 1. Kafka 基础概念 2. 环境安装(Windows单机) 3. 主题操作(命令行) 4. 生产与消费 5. 源码阅读(可选) 6. 记忆口诀)
  • [2. 环境安装(Windows单机)](#文章目录 1-Kafka入门-尚硅谷 @[toc] 1. Kafka 基础概念 2. 环境安装(Windows单机) 3. 主题操作(命令行) 4. 生产与消费 5. 源码阅读(可选) 6. 记忆口诀)
  • [3. 主题操作(命令行)](#文章目录 1-Kafka入门-尚硅谷 @[toc] 1. Kafka 基础概念 2. 环境安装(Windows单机) 3. 主题操作(命令行) 4. 生产与消费 5. 源码阅读(可选) 6. 记忆口诀)
  • [4. 生产与消费](#文章目录 1-Kafka入门-尚硅谷 @[toc] 1. Kafka 基础概念 2. 环境安装(Windows单机) 3. 主题操作(命令行) 4. 生产与消费 5. 源码阅读(可选) 6. 记忆口诀)
  • [5. 源码阅读(可选)](#文章目录 1-Kafka入门-尚硅谷 @[toc] 1. Kafka 基础概念 2. 环境安装(Windows单机) 3. 主题操作(命令行) 4. 生产与消费 5. 源码阅读(可选) 6. 记忆口诀)
  • [6. 记忆口诀](#文章目录 1-Kafka入门-尚硅谷 @[toc] 1. Kafka 基础概念 2. 环境安装(Windows单机) 3. 主题操作(命令行) 4. 生产与消费 5. 源码阅读(可选) 6. 记忆口诀)

1. Kafka 基础概念

知识点 一句话答案
1.1 初识Kafka Scala+Java写的高吞吐分布式发布订阅系统,2010年LinkedIn出品,2012成为Apache顶级项目。
1.2 消息队列 传输数据的中间件,Kafka没完全遵循JMS规范,故名字里无MQ。
1.3 JMS五大件 Provider、Message、Producer、Consumer、Destination(Queue/Topic)。
1.4 P2P vs 发布订阅 P2P一条消息只被一个消费者 取走;发布订阅一条消息可被多个订阅者同时消费,Kafka采用后者。
1.5 生产者-消费者模式 队列当缓冲区解耦削峰,单机用阻塞队列,分布式用Kafka这类中间件。
1.6 中间件对比 Kafka10万级吞吐、毫秒延迟、分布式高可用 ,适合大数据;ActiveMQ/RabbitMQ万级吞吐,适合JavaEE。
1.7 ZooKeeper作用 替Kafka保存元数据与节点状态,2.8+开始用Raft去ZK,4.x将彻底移除。

2. 环境安装(Windows单机)

知识点 一句话答案
2.1 所需版本 Java 8即可,Kafka 3.6.1内置Scala 2.12,无需另装Scala。
2.2 安装包 下载kafka_2.12-3.6.1.tgz,解压到非系统盘,目录改短如E:/kafka
2.3 启动ZK config/zookeeper.propertiesdataDir,执行 zookeeper-server-start.bat ../../config/zookeeper.properties
2.4 启动Kafka server.propertieslog.dirs,执行 kafka-server-start.bat ../../config/server.propertiesjps看到Kafka进程即成功。

3. 主题操作(命令行)

知识点 一句话答案
3.1 创建主题 kafka-topics.bat --bootstrap-server localhost:9092 --create --topic 名字
3.2 列表/详情 --list看所有主题;--describe --topic 名字看分区副本等细节。
3.3 修改主题 --alter --partitions 新分区数(只能增)。
3.4 删除主题 --delete --topic 名字;Windows易锁文件,建议Linux再做。

4. 生产与消费

知识点 一句话答案
4.1 命令行生产 kafka-console-producer.bat --bootstrap-server localhost:9092 --topic 名字,回车即发送。
4.2 命令行消费 kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic 名字 --from-beginning
4.3 图形工具 Kafka Tool连localhost:9092可可视化收发消息。
4.4 Java 生产 kafka-clients 3.6.1,配BOOTSTRAP_SERVERS + KEY/VALUE序列化new KafkaProducer<>(conf).send(record)
4.5 Java 消费 BOOTSTRAP_SERVERS + 反序列化 + group.idconsumer.subscribe(Arrays.asList("topic"))poll循环取ConsumerRecord

5. 源码阅读(可选)

知识点 一句话答案
5.1 所需环境 JDK 17 + Scala 2.13 + Gradle,导入kafka-3.6.1-src.tgzgradle build --exclude-task test再IDEA打开。

6. 记忆口诀

"Kafka快似飞,发布订阅不排队;ZK管元数据,去ZK等4.x;先启ZK再启K,主题生产消费一条龙。"

相关推荐
教练、我想打篮球10 小时前
05 kafka 如何存储较大数据记录
java·kafka·record
时鲟、时倾2 天前
docker部署kafka
docker·容器·kafka
编啊编程啊程2 天前
【029】智能停车计费系统
java·数据库·spring boot·spring·spring cloud·kafka
熙客3 天前
Kafka:专注高吞吐与实时流处理的分布式消息队列
分布式·中间件·kafka
熊文豪3 天前
在 openEuler 上部署 Kafka 集群:深度性能评测与优化指南
分布式·kafka·openeuler
陈果然DeepVersion3 天前
Java大厂面试真题:Spring Boot+Kafka+AI智能客服场景全流程解析(十)
java·spring boot·ai·kafka·面试题·向量数据库·rag
陈果然DeepVersion4 天前
Java大厂面试真题:Spring Boot+Kafka+AI智能客服场景全流程解析(十一)
java·spring boot·微服务·ai·kafka·面试题·rag
帅次4 天前
系统分析师-案例分析-数据库系统&数据仓库&反规范化技术&NoSQL&内存数据库
大数据·数据库·数据仓库·oracle·kafka·数据库开发·数据库架构
零雲4 天前
java面试:有了解过kafka架构吗,可以详细讲一讲吗
java·面试·kafka
sakoba4 天前
Linux上kafka部署和使用
linux·运维·kafka