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 小时前
Kafka 集群应急故障排查手册
分布式·kafka
无籽西瓜a10 小时前
【西瓜带你学Kafka | 第八期】 Kafka的主从同步、消息可靠性、流处理与顺序消费(文含图解)
java·分布式·后端·kafka·消息队列·mq
qqVHU10 小时前
kafka笔记
笔记·分布式·kafka
醉颜凉10 小时前
Kafka 消息过期时间设置与清理机制全解析
分布式·kafka·linq
Jinkxs10 小时前
SkyWalking - Kafka _ RabbitMQ 消息链路追踪支持
kafka·rabbitmq·skywalking
犬小哈10 小时前
滴滴二面:你项目为什么选择 RocketMQ,而不是 Kafka? 我:支支吾吾....
分布式·kafka·rocketmq
Jinkxs10 小时前
Kafka - 日志刷盘策略优化:sync.ms、flush.messages配置
分布式·kafka
武子康11 小时前
Java-219 RocketMQ Spring Boot 集成指南:生产者与消费者实战
java·spring boot·分布式·kafka·消息队列·rocketmq·java-rocketmq
清平乐的技术专栏11 小时前
【Kafka笔记】(一)认识 Kafka
笔记·分布式·kafka
清平乐的技术专栏12 小时前
【Kafka笔记】(四)Kafka 三种消费模式
笔记·分布式·kafka