在消息队列kafka多消费者组消费同一Topic场景下的idea调试debug断点进不去的解决方案

1. 问题场景复现

不同类型的消息发到同一个Topic中,设置多个消费者组,为每个消费者组打一个标记。每一种消费者组只能消费对应的消息类型。这样做的好处是避免设置多个Topic,简化代码开发的同时性能损耗小。问题出现在消费端,由于多个消费者组对象随着项目初始化而初始化,导致了你的断点不一定能准确打在对应的消费者上,出现的问题就是进不去断点。

2. 解决思路

你在生产者端发送一条消息进入到kafka消息队列,重点来了,被@KafkaListener修饰的消费者代码肯定能捕获这一条消息,但是这条消息的类型标识和这个消费者组的类型标识不一定相同,代码逻辑是如果不相同要舍弃这条消息。所以,让断点生效有一个折中的方式,直接在被@KafkaListener修饰的代码中将消费者组的类型写固定。但是一定要记得调试完断点以后再改回来。

相关推荐
c++之路2 分钟前
Linux进程池与线程池深度解析:设计原理+实战实现(网盘项目架构)
java·linux·架构
阿里云基础软件4 分钟前
当 CPU 莫名抖动时,SysOM Agent 如何 3 分钟定位元凶?
java·阿里云·智能运维·操作系统控制台·sysom
蜜獾云12 分钟前
从linux内核理解Java怎样实现Socket通信
java·linux·运维
wregjru32 分钟前
【读书笔记】Effective C++ 条款5~6:若不想使用编译器自动生成的函数,就该明确拒绝
java·开发语言
华科易迅34 分钟前
SQL学习
java·sql·学习
语戚36 分钟前
从 JVM 底层拆解:i++、++i、i+=1、i=i+1 的实现逻辑与坑点
java·开发语言·jvm·面试·自增·指令·虚拟机
StackNoOverflow40 分钟前
Spring核心知识精讲:IoC容器、Bean作用域生命周期与AOP(第二部分)
java·后端·spring
野生技术架构师43 分钟前
Java面试精选:数据库 + 数据结构 +JVM+ 网络 +JAVA+ 分布式
java·数据库·面试
你这个代码我看不懂1 小时前
JVM栈、方法区和堆内存
java·开发语言·jvm
学编程就要猛1 小时前
JavaEE初阶:多线程案例
java·开发语言