Kafka | SpringBoot集成Kafka

SpringBoot集成Kafka

  • 一、前言
  • 二、项目
    • [1. pom](#1. pom)
    • [2. application.properties](#2. application.properties)
    • [4. 消息生产者-测试](#4. 消息生产者-测试)
    • [5. 消息消费者](#5. 消息消费者)
  • 三、启动测试
  • [四、有总结的不对的地方/或者问题 请指正, 我在努力中](#四、有总结的不对的地方/或者问题 请指正, 我在努力中)

一、前言

该文章中主要对SpringBoot 集成Kafka 主要是 application.properties 与 pom坐标就算集成完成,剩下的就是一些 消费者 / 发布者的操作了详细的请看项目代码。简简单单 快速集成

二、项目

1. pom

java 复制代码
<dependency>
         <groupId>org.springframework.kafka</groupId>
         <artifactId>spring-kafka</artifactId>
</dependency>

2. application.properties

java 复制代码
spring.kafka.bootstrap-servers=192.168.0.113:9092
# 生产者配置
spring.kafka.producer.retries=2
spring.kafka.producer.batch-size=16384
spring.kafka.producer.buffer-memory=33554432
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.acks=-1

# 消费者配置
spring.kafka.consumer.enable-auto-commit=true
spring.kafka.consumer.auto-commit-interval.ms=1000
spring.kafka.consumer.auto-offset-reset=latest
spring.kafka.consumer.max-poll-records=500
spring.kafka.consumer.fetch-max-wait.ms=500
spring.kafka.consumer.fetch-min-size=1
spring.kafka.consumer.heartbeat-interval.ms=3000
spring.kafka.consumer.key-deserializer=org.apache.kafka.common.serialization.StringDeserializer
spring.kafka.consumer.value-deserializer=org.apache.kafka.common.serialization.StringDeserializer

4. 消息生产者-测试

java 复制代码
@RunWith(SpringJUnit4ClassRunner.class)
@SpringBootTest(classes = ZoheVideoStructApplication.class)
public class ZoheVideoStructApplicationTest {

    @Autowired
    private KafkaTemplate<String,String> kafkaTemplate;

    @Test
    public void test(){
        kafkaTemplate.send("sb_topic","123132132132132132123132132");
    }
}

5. 消息消费者

java 复制代码
@Component
public class KafkaConsumer {

    //监听消费
    @KafkaListener(topics = {"sb_topic"},groupId = "test")
    public void onNormalMessage(ConsumerRecord<String, Object> record) {
        System.out.println("简单消费:" + record.topic() + "-" + record.partition() + "="+  record.value());
    }

    //监听消费
    @KafkaListener(topics = {"sb_topic"},groupId = "test2")
    public void onNormalMessage2(ConsumerRecord<String, Object> record) {
        System.out.println("简单消费2:" + record.topic() + "-" + record.partition() + "=" + record.value());
    }

}

三、启动测试

四、有总结的不对的地方/或者问题 请指正, 我在努力中

相关推荐
爆米花byh几秒前
在RockyLinux9环境的Kafka4.1.1单机版安装(无ZK依赖)
中间件·kafka
yumgpkpm1 小时前
预测:2026年大数据软件+AI大模型的发展趋势
大数据·人工智能·算法·zookeeper·kafka·开源·cloudera
Elieal1 小时前
SpringBoot 数据层开发与企业信息管理系统实战
java·spring boot·后端
识君啊1 小时前
MyBatis-Plus 逻辑删除导致唯一索引冲突的解决方案
java·spring boot·mybatis·mybatis-plus·唯一索引·逻辑删除
Coder_Boy_1 小时前
Java开发者破局指南:跳出内卷,借AI赋能,搭建系统化知识体系
java·开发语言·人工智能·spring boot·后端·spring
Aric_Jones1 小时前
idea使用.env运行SpringBoot项目
java·spring boot·intellij-idea
消失的旧时光-19432 小时前
第十六课实战:分布式锁与限流设计 —— 从原理到可跑 Demo
redis·分布式·缓存
若水不如远方2 小时前
分布式一致性(三):共识的黎明——Quorum 机制与 Basic Paxos
分布式·后端·算法
代码栈上的思考2 小时前
SpringBoot 拦截器
java·spring boot·spring
DemonAvenger2 小时前
Kafka消费者深度剖析:消费组与再平衡原理
性能优化·kafka·消息队列