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 集成测试步骤
4.2 Java 应用场景
4.2.1 Spring Boot 集成
4.2.1.1 创建 Spring Boot 项目
- 使用 Spring Initializr 或 IDE 新建 Maven 项目,parent 指向
spring-boot-starter-parent 3.0.5,JDK 17。 pom.xml 核心依赖: spring-boot-starter-web(排除 logging)spring-kafkakafka-clients 3.6.1- 工具:
lombok、fastjson、hutool-json、hutool-db
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 编写功能代码
- 配置常量类
SpringBootKafkaConfig:定义 TOPIC_TEST = "test"、GROUP_ID = "test"。 - 生产者控制器
KafkaProducerController: - POST
/kafka/produce - 接收任意 JSON →
JSONUtil.toJsonStr → kafkaTemplate.send
- 批量消费者
KafkaDataConsumer: @KafkaListener(topics = TOPIC_TEST, groupId = GROUP_ID)- 接收
List<String>,逐条解析并打印 "data" 字段
4.2.1.3 集成测试步骤
- 启动 ZooKeeper
- 启动 Kafka
- 启动 Spring Boot 应用(端口 9999)
- 用 Postman 向
http://localhost:9999/kafka/produce 发 POST 请求,观察控制台消费者输出