消息发送成功,但是消费状态都为NOT_CONSUME_YET image.png 二、trackType状态含义 通过查询RocketMQ-Dashboard的源码 publicenumTrackType{ CONSUMED,// 消息已经被消费CONSUMED_BUT_FILTERED,// 消息已经投递但被过滤PULL,// 消息消费的方式是拉模式NOT_CONSUME_YET,// 目前没有被消费NOT_ONLINE,// CONSUMER不在线UN...
• 修正订阅时,拉取到多个msg时,只处理一个handler的问题。 该bug不会造成not-consume。 • 修正路由注册时,可能造成subscirbe同一个topic/tag多次的问题。 该bug不会造成not-consume。 • 确认了已经回复了ack。 检查consumergroup,是否存在订阅关系不一致。.√ • 检查了消费方的消费组名,都叫GID_data...
一、故障状态 消息发送成功,但是消费状态都为NOT_CONSUME_YET image.png 二、trackType状态含义 通过查询RocketMQ-Dashboard的源码 publicenumTrackType{CONSUMED,// 消息已经被消费CONSUMED_BUT_FILTERED,// 消息已经投递但被过滤PULL,// 消息消费的方式是拉模式NOT_CONSUME_YET,// 目前没有被消费NOT_ONLINE,// CO...
再说一下@RocketMQMessageListener这个监听消息的注解,它的的配置是 @RocketMQMessageListener(nameserver="你的rocketmq的nameserver", topic="你要订阅的topic名字", consumerGroup="你的消费者的组名字", consumerMode=ConsumeMode.ORDERLY(这个是顺序消费,默认是ConsumeMode.CONCURRENT异步多线程消费), selectorExpression...
没有被订阅方消费,可以看下订阅方应用的日志,或通过mq broker上,执行sh mqadmin consumerprogress -...
NOT_ONLINE, UNKNOWN } 每种类型的解释如下: 「怎么判定消息已经被消费?」 上一节我们讲到,broker会用一个map来保存每个queue的消费进度,「如果queue的offset大于被查询消息的offset则消息被消费,否则没有被消费」(NOT_CONSUME_YET)。 我们在RocketMQ-Dashboard上其实就能看到每个队列broker端的offset(代理者位点)以...
上一节我们讲到,broker会用一个map来保存每个queue的消费进度,「如果queue的offset大于被查询消息的offset则消息被消费,否则没有被消费」(NOT_CONSUME_YET)。 我们在RocketMQ-Dashboard上其实就能看到每个队列broker端的offset(代理者位点)以及消息消费的offset(消费者位点),差值就是没有被消费的消息。
先根据时间段找到了消息,确保了发送没有问题,接着看消息的状态为NOT_CONSUME_YET,说明consumer在线但是没有消息 「NOT_CONSUME_YET表明消息没有被消费」,但是消息发送都过了好长时间了,consumer不应该没消费啊,查日志consumer确实没有消费。 用RocketMQ-Dashboard查看一下代理者位点和消费者位点,0队列正常消费,其他队...
2.从消息看message Detail 对应的consumerGroup trackType为 not conume yet 3.项目日志也没有任何错误日志,然而根据相关业务查询数据库发现数据已经处理完成 4.业务代码断点,没有抛出任何异常,通过resend message也能正常消费 5.怀疑是不是rocketMq 更新offset的定时任务没有启动 ...
消息已经被投递, 订阅端返回ReconsumerLater,或者返回NULL,或者抛出异常,消息都会走重试流程,消息投递状态都是CONSUMED。 3.CONSUMED_BUT_FILTERED 消息已经被投递且被过滤, 比如,发布端发布消息topicA,tagA,订阅端订阅topicA,tagB 4.NOT_CONSUME_YET 消息未被投递,有可能消息发生了堆积,还未被消费;也有可能消费线程...