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;消息是发送给某个主题

相关推荐
掘金-我是哪吒2 小时前
分布式微服务系统架构第145集:Jeskson文档-微服务分布式系统架构
分布式·微服务·云原生·架构·系统架构
G探险者8 小时前
为什么 Zookeeper 越扩越慢,而 Nacos 却越扩越快?
分布式·后端
Pitayafruit9 小时前
跟着大厂学架构01:如何利用开源方案,复刻B站那套“永不崩溃”的评论系统?
spring boot·分布式·后端
bxlj_jcj11 小时前
Kafka环境搭建全攻略:从Docker到Java实战
java·docker·kafka
苏格拉没有底_coder15 小时前
引入 Kafka 消息队列解耦热点操作
分布式·kafka
顧棟16 小时前
Zookeeper 3.8.4 安装部署帮助手册
分布式·zookeeper
陈卓41018 小时前
MQ选型及RocketMQ架构总览
中间件·kafka·消息队列·rabbitmq·rocketmq
猕员桃19 小时前
《Elasticsearch 分布式搜索在聊天记录检索中的深度优化》
分布式·elasticsearch·wpf
沛沛老爹19 小时前
深入剖析 Celery:分布式异步任务处理的利器
分布式·python·微服务·celery·架构设计·worker节点
一眼万年0421 小时前
Kafka APIs 深度解析:请求处理架构与核心流程
微服务·kafka