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,主题生产消费一条龙。"

相关推荐
伞啊伞4 小时前
ZooKeeper与Kafka分布式:从基础原理到集群部署
分布式·zookeeper·kafka
我好饿14 小时前
zookeeper+kafka
分布式·zookeeper·kafka
坐吃山猪7 小时前
Kafka07-集成-尚硅谷
kafka
坐吃山猪8 小时前
Kafka08-优化-尚硅谷
kafka
失散131 天前
分布式专题——21 Kafka客户端消息流转流程
java·分布式·云原生·架构·kafka
福大大架构师每日一题1 天前
docker和k3s安装kafka,go语言发送和接收kafka消息
docker·golang·kafka
Hello.Reader1 天前
Kafka 合格候选主副本(ELR)在严格 min ISR 约束下提升选主韧性
分布式·kafka
还是大剑师兰特1 天前
Kafka 面试题及详细答案100道(81-90)-- 高级特性与应用
kafka·大剑师·kafka面试题
dalianwawatou1 天前
kafka-日志收集平台部署项目
分布式·kafka