kafka消息监听

1,
spring配置kafka网址

2,listener

java 复制代码
@Component
public class OrderMsgListener {

    @KafkaListener(topics = "order",groupId = "order-service")
    public void listen(ConsumerRecord record){
        System.out.println("收到消息:"+record); //可以监听到发给kafka的新消息,以前的拿不到
    }

    @KafkaListener(groupId = "order-service-2",topicPartitions = {
            @TopicPartition(topic = "order",partitionOffsets = {
                    @PartitionOffset(partition = "0",initialOffset = "0")
            })
    })//这一块注解表示可以监听kafka之前的消息
    public void listenAll(ConsumerRecord record){
        System.out.println("收到partion-0消息:"+record);
    }
}

groupId表示分组,不同组的消费者不是竞争关系

3,

java 复制代码
@KafkaListener(groupId = "order-service-2",topicPartitions = {
            @TopicPartition(topic = "order",partitionOffsets = {
                    @PartitionOffset(partition = "0",initialOffset = "0")
            })
    })

这段代码使用了Spring Kafka提供的注解@KafkaListener来定义一个Kafka消费者。具体的配置如下:

  1. groupId = "order-service-2":指定该消费者所属的消费者组ID,即"order-service-2"。
  2. topicPartitions:表示要订阅的主题和分区信息,是一个数组。
  3. @TopicPartition(topic = "order", partitionOffsets = { ... }):表示订阅名为"order"主题的特定分区。
  4. @PartitionOffset(partition = "0", initialOffset = "0"):表示订阅的分区为0,并设置初始偏移量为0。

这段代码将创建一个Kafka消费者,用于订阅名为"order"的Kafka主题下的0号分区,并从初始偏移量0开始消费消息。

在实际应用中,您可能会根据需要添加其他的@TopicPartition@PartitionOffset注解可以订阅多个主题和分区,并指定每个分区的初始偏移量。

值得注意的是,上述代码是使用Spring Kafka提供的注解方式来创建Kafka消费者。通过该注解,您可以方便地定义多个消费者,并且框架会自动处理与Kafka的连接、消费消息等底层细节。

4,

主题:topics;消息是发送给某个主题

相关推荐
身如柳絮随风扬5 小时前
多数据源切换实战:从业务场景到3种实现方案全解析
java·分布式·微服务
AIMath~6 小时前
雪花算法+ZooKeeper解决方案+RPC是什么
分布式·zookeeper·云原生
KmSH8umpK6 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第六篇
数据库·redis·分布式
空中海8 小时前
Kafka :存储、复制与可靠性
分布式·kafka·linq
渣渣盟8 小时前
构建企业级实时数据管道:Kafka + Flink 最佳实践
分布式·flink·kafka
KmSH8umpK9 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第四篇
数据库·redis·分布式
KmSH8umpK9 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第五篇
数据库·redis·分布式
卧室小白10 小时前
ceph-分布式存储
分布式
aXin_ya10 小时前
微服务第九天 分布式缓存(Redis)
分布式·缓存·微服务
空中海11 小时前
Spring Boot Kafka 项目 Demo:订单事件系统 专家知识、源码阅读路线与面试题
spring boot·kafka·linq