SpringCloud集成kafka集群

目录

1.引入kafka依赖

2.在yml文件配置配置kafka连接

3.注入KafkaTemplate模版

4.创建kafka消息监听和消费端

5.搭建kafka集群

[5.1 下载 kafka Apache KafkaApache Kafka: A Distributed Streaming Platform.https://kafka.apache.org/downloads.html](#5.1 下载 kafka Apache KafkaApache Kafka: A Distributed Streaming Platform.https://kafka.apache.org/downloads.html)

[5.2 在config目录下做相关配置](#5.2 在config目录下做相关配置)


1.引入kafka依赖

java 复制代码
 <!-- Spring Boot Kafka Starter -->
        <dependency>
            <groupId>org.springframework.kafka</groupId>
            <artifactId>spring-kafka</artifactId>
        </dependency>

2.在yml文件配置配置kafka连接

java 复制代码
  kafka:
    bootstrap-servers: localhost:9092,localhost:9093,localhost:9095,localhost:9096
    consumer:
      group-id: myGroup
      auto-offset-reset: earliest
      key-deserializer: org.apache.kafka.common.serialization.StringDeserializer
      value-deserializer: org.apache.kafka.common.serialization.StringDeserializer
    producer:
      key-serializer: org.apache.kafka.common.serialization.StringSerializer
      value-serializer: org.apache.kafka.common.serialization.StringSerializer

3.注入KafkaTemplate模版

java 复制代码
@Configuration
public class KafkaConfig {
    @Autowired
    private ProducerFactory producerFactory;
    @Bean
    public KafkaTemplate<String, String> kafkaTemplate() {
        return new KafkaTemplate<>(producerFactory);
    }
   /* @Bean
    public ProducerFactory<String, String> producerFactory() {
        Map<String, Object> configProps = new HashMap<>();
        configProps.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092");
        configProps.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, StringSerializer.class);
        configProps.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, StringSerializer.class);
        // 添加其他配置...
        return new DefaultKafkaProducerFactory<>(configProps);
    }*/
}

4.创建kafka消息监听和消费端

java 复制代码
package com.example.consumer.consumer;

import org.springframework.kafka.annotation.KafkaListener;
import org.springframework.stereotype.Component;

@Component
public class KafkaConsumer {
    @KafkaListener(topics = "yourTopic", groupId = "myGroup")
    public void listen(String message) {
        System.out.println("Received Message in group 'myGroup': " + message);
    }
}

5.搭建kafka集群

5.1 下载 kafkaApache KafkaApache Kafka: A Distributed Streaming Platform.https://kafka.apache.org/downloads.html

5.2 在config目录下做相关配置

zookeeper.properties相关配置

server.properties相关配置 ,端口默认是9092,如果需要配置特定端口,可以加port=9092

想搞几个集群就复制几个,并且修改zookeeper.propertie和server.properties的端口。

就像我配置的

相关推荐
山鬼龙王7 小时前
吃透 Kafka:一篇讲清楚核心原理和高频考点
kafka
随遇而安zx12 小时前
SpringCloud---Spring Cloud 分布式任务调度(XXL-Job / ElasticJob)
分布式·spring cloud
未秃头的程序猿14 小时前
一次秒杀把服务打挂了,我用Sentinel规则配置化救了回来
java·后端·spring cloud
随遇而安zx16 小时前
SpringCloud 分布式链路追踪 设计思想与源码深度解析
分布式·spring cloud
随遇而安zx16 小时前
Spring Cloud Gateway 微服务网关 设计思想与深度解析
java·spring cloud·微服务·架构
谢亮_vipxieliang17 小时前
ValidX vs Apache Commons Validator:功能与性能对比
java·服务器·spring boot·后端·spring cloud·apache·hibernate
谢亮_vipxieliang2 天前
ValidX分组验证详解:不同场景使用不同验证规则
java·spring boot·后端·spring cloud·eclipse·hibernate
pnoker2 天前
IoT DC3 消息总线:六适配器可插拔设计
物联网·架构·kafka·消息队列·rabbitmq
AIGC小尼2 天前
2026 最新实战|SpringCloud 微服务整合 SpringAI 完整落地教程(RAG 知识库 + 限流降级 + 跨服务调用)
spring·spring cloud·微服务
cxhello2 天前
消费者活着、心跳正常、日志干净,但它七天没拉过一条消息
python·kafka