Kafka07-集成-尚硅谷

4-Kafka 集成

### 文章目录

  • [4-Kafka 集成](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [@toc](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2 Java 应用场景](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2.1 Spring Boot 集成](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2.1.1 创建 Spring Boot 项目](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2.1.2 编写功能代码](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)
  • [4.2.1.3 集成测试步骤](#文章目录 4-Kafka 集成 @[toc] 4.2 Java 应用场景 4.2.1 Spring Boot 集成 4.2.1.1 创建 Spring Boot 项目 4.2.1.2 编写功能代码 4.2.1.3 集成测试步骤)

4.2 Java 应用场景

4.2.1 Spring Boot 集成
4.2.1.1 创建 Spring Boot 项目
  1. 使用 Spring Initializr 或 IDE 新建 Maven 项目,parent 指向 spring-boot-starter-parent 3.0.5,JDK 17。
  2. pom.xml 核心依赖:
    • spring-boot-starter-web(排除 logging)
    • spring-kafka
    • kafka-clients 3.6.1
    • 工具:lombok、fastjson、hutool-json、hutool-db
  3. resources/application.yml 关键配置:
    • bootstrap-servers: localhost:9092
    • Producer:acks=all、retries=0、batch-size=16384、buffer-memory=33554432
    • Consumer:group-id=test、auto-offset-reset=earliest、enable-auto-commit=true、max-poll-records=2
    • Listener:type=batch、concurrency=2、missing-topics-fatal=true
    • Server:port=9999
4.2.1.2 编写功能代码
  1. 配置常量类 SpringBootKafkaConfig:定义 TOPIC_TEST = "test"、GROUP_ID = "test"。
  2. 生产者控制器 KafkaProducerController:
    • POST /kafka/produce
    • 接收任意 JSON → JSONUtil.toJsonStr → kafkaTemplate.send
  3. 批量消费者 KafkaDataConsumer:
    • @KafkaListener(topics = TOPIC_TEST, groupId = GROUP_ID)
    • 接收 List<String>,逐条解析并打印 "data" 字段
4.2.1.3 集成测试步骤
  1. 启动 ZooKeeper
  2. 启动 Kafka
  3. 启动 Spring Boot 应用(端口 9999)
  4. 用 Postman 向 http://localhost:9999/kafka/produce 发 POST 请求,观察控制台消费者输出
相关推荐
starzy19901 天前
Kafka网络层第一道门:Acceptor线程是怎么启动的
大数据·kafka
huaweichenai1 天前
spring boot对接kafka实现消息队列处理
spring boot·后端·kafka
你看我名字1 天前
Kafka 架构、消息可靠性与生产运维:从分区模型到故障治理
运维·架构·kafka
starzy19901 天前
Kafka源码深度剖析:消息有异常是如何处理的
大数据·kafka
starzy19902 天前
Kafka写数据入口:消息进了Broker之后交给谁
大数据·kafka
螺蛳粉 螺蛳粉2 天前
CDH第七篇:CDH 集成 Kafka 实战:CSD + Parcel 组合拳,先装 ZooKeeper 是铁律
物联网·zookeeper·kafka·消息队列·parcel·cdh集成·csd
Flynn Liang3 天前
物联网时序数据乱序问题全链路治理:从设备到存储的五层实战(附 Flink/Kafka/IoTDB 配置级代码)
flink·kafka·iot·iotdb·emqx·乱序·时序数据
starzy19903 天前
Kafka响应发送:字节是怎么真正写回客户端的
大数据·kafka
阳光不锈@4 天前
三大主流消息队列架构设计思想剖析:从 RabbitMQ 到 RocketMQ 的改造实践
kafka·rabbitmq·rocketmq·rabbit改造rocket·去除rabbitmq·rabbitmq改造
ZealSinger4 天前
Boot4升后Kafka retry属性怎么改
kafka·retry·boot4·升级踩坑