ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

springboot集成kafka client并消费消息

2022-07-28 13:35:20  阅读:157  来源: 互联网

标签:group springboot kafka topic client consumer id 消费者


1. 依赖

<!-- kafka client -->
<dependency>
   <groupId>org.springframework.kafka</groupId>
   <artifactId>spring-kafka</artifactId>
</dependency>   

2. 配置文件配置kafka bootstrap-server

######## kafka client ############
spring.kafka.bootstrap-servers=127.0.0.1:9092
spring.kafka.consumer.group-id=group-dl-guard

3. 消费消息

@Component
public class KafkaClient {
    
    private Logger log = LoggerFactory.getLogger(KafkaClient.class);

    
    @KafkaListener(topics = {"topic-"},groupId = "group-dl-guard")
    public void listenDlServer(String input) {

        log.info(input);
    }
}

4. 配置group-id是因为不同的consumer在kafka中管理中都需要配置group-id

摘文取自:https://www.cnblogs.com/zhaoshizi/p/12297646.html

文章中提到,消费者在zookeeper中注册中,消费者注册标识符(Consumer Identifiers Registry)是保存在zookeeper的/consumers/[group_id]/ids/[consumer_connector_id]的路径下,这些消费者注册节点形成一棵树,当有消费者加入或离开时,树上所有的消费者都会被通知到,从而进行rebanlance。

消费者在zookeeper注册的路径与topic并没有关系,反而与groupid绑定,这是因为同一个consumer可以消费不同的topic。如果不同的consumer使用同一个groupid消费不同的topic,而任何一个topic的consumer出现加入或离开等变化时,所有groupid组里的consumer都会发生rebanlance。从而可能导致上面调试时出现的问题。

所以kafka 不同的consumer需要使用不同的group id,以减小相互之间的影响。

 

标签:group,springboot,kafka,topic,client,consumer,id,消费者
来源: https://www.cnblogs.com/anenyang/p/16528330.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有