如何解决Rabbit mq各种报错的问题
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要介绍了如何解决Rabbit mq各种报错的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1.生产者生产消息成功,但没有
千家信息网最后更新 2026年11月01日如何解决Rabbit mq各种报错的问题
这篇文章主要介绍了如何解决Rabbit mq各种报错的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
1.生产者生产消息成功,但没有进入队列。没有报错,但在图形化页面上就找不到消息,当然消费者也是消费不了。
原因:思考一下,页面上都没有消息,那么首先排除消费者的原因,生产者创建队列时名称是否正确,绑定交换机时,RoutingKey是否正确,Arg是否正确。
2.生产者发送成功,消费者日志在刷屏
org.springframework.amqp.rabbit.listener.exception.ListenerExecutionFailedException: Listener method 'no match' threw exceptionat org.springframework.amqp.rabbit.listener.adapter.MessagingMessageListenerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:198) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.adapter.MessagingMessageListenerAdapter.onMessage(MessagingMessageListenerAdapter.java:127) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:1552) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.actualInvokeListener(AbstractMessageListenerContainer.java:1478) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.invokeListener(AbstractMessageListenerContainer.java:1466) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.doExecuteListener(AbstractMessageListenerContainer.java:1461) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.executeListener(AbstractMessageListenerContainer.java:1410) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.doReceiveAndExecute(SimpleMessageListenerContainer.java:870) [spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.receiveAndExecute(SimpleMessageListenerContainer.java:854) [spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer.access$1600(SimpleMessageListenerContainer.java:78) [spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.mainLoop(SimpleMessageListenerContainer.java:1137) [spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.SimpleMessageListenerContainer$AsyncMessageProcessingConsumer.run(SimpleMessageListenerContainer.java:1043) [spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at java.lang.Thread.run(Thread.java:748) [na:1.8.0_131]Caused by: org.springframework.amqp.AmqpException: No method found for class [Bat org.springframework.amqp.rabbit.listener.adapter.DelegatingInvocableHandler.getHandlerForPayload(DelegatingInvocableHandler.java:149) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.adapter.DelegatingInvocableHandler.invoke(DelegatingInvocableHandler.java:129) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.adapter.HandlerAdapter.invoke(HandlerAdapter.java:60) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE]at org.springframework.amqp.rabbit.listener.adapter.MessagingMessageListenerAdapter.invokeHandler(MessagingMessageListenerAdapter.java:190) ~[spring-rabbit-2.1.5.RELEASE.jar:2.1.5.RELEASE] ... 12 common frames omitted
为啥在刷屏呢?看看官方说的
If retries are not enabled and the listener throws an exception, by default the delivery will be retried indefinitely. You can modify this behavior in two ways; set the defaultRequeueRejectedproperty to falseand zero re-deliveries will be attempted; or, throw an AmqpRejectAndDontRequeueExceptionto signal the message should be rejected. This is the mechanism used when retries are enabled and the maximum delivery attempts are reached.
如果未启用重试,且侦听器抛出异常,则默认情况下将无限期重试交付。您可以通过两种方式修改此行为;设置defaultRequeueRejected 属性为false并将尝试零重新交付;或者,抛出AmqpRejectAndDontRequeueException 若要发出信号,则应拒绝该消息。这是启用重试并达到最大交付尝试时使用的机制。
百度了一下,需要消费者把@RabbitListener放到方法上。
@RabbitListener(queues = "delay_queue_order_cancel") @RabbitHandler public BaseResult cancelOrder(String orderNumber) { BaseResult baseResult = new BaseResult(); return baseResult; }3.同样是消费者日志刷屏,看加粗的那句,说请求消息不包含reply-to属性,也没有设置默认的响应交换。意思就是你监听消费的那个方法有返回值,默认不允许有返回值
Caused by: org.springframework.amqp.rabbit.listener.adapter.ReplyFailureException: Failed to send reply with payload 'InvocationResult [returnValue=BaseResult{code=1, message='success', token='null', data=0}, returnType=class com.mjt.api.boot.common.BaseResult]'at org.springframework.amqp.rabbit.listener.adapter.AbstractAdaptableMessageListener.doHandleResult(AbstractAdaptableMessageListener.java:363)at org.springframework.amqp.rabbit.listener.adapter.AbstractAdaptableMessageListener.handleResult(AbstractAdaptableMessageListener.java:321)at org.springframework.amqp.rabbit.listener.adapter.MessagingMessageListenerAdapter.onMessage(MessagingMessageListenerAdapter.java:129)at org.springframework.amqp.rabbit.listener.AbstractMessageListenerContainer.doInvokeListener(AbstractMessageListenerContainer.java:1514) ... 10 common frames omittedCaused by: org.springframework.amqp.AmqpException: Cannot determine ReplyTo message property value: Request message does not contain reply-to property, and no default response Exchange was set.at org.springframework.amqp.rabbit.listener.adapter.AbstractAdaptableMessageListener.getReplyToAddress(AbstractAdaptableMessageListener.java:443)at org.springframework.amqp.rabbit.listener.adapter.AbstractAdaptableMessageListener.doHandleResult(AbstractAdaptableMessageListener.java:359) ... 13 common frames omitted感谢你能够认真阅读完这篇文章,希望小编分享的"如何解决Rabbit mq各种报错的问题"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
消费
消息
消费者
篇文章
生产
生产者
问题
成功
原因
属性
方法
日志
队列
页面
尝试
最大
交换机
价值
侦听器
信号
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技公司排名
互联网科技工作委员会
互联网和科技创新
智能科技公司是互联网公司吗
互联网科技与金融科技
上海互联网科技有限公司
喔噻互联网科技
互联网 卓越科技
互联网科技公司做什么
丰台科技园 互联网公司
互联网实体化科技化
玖二柒互联网科技公司待遇
成都互联网科技公司100强
互联网科技公司有风险吗
注册互联网科技公司经营范围大全
乌苏新华互联网科技做什么的
互联网方面的科技前沿
从那以后互联网科技有限公司
互联网科技职业技能培训学校
恒生科技指数 中概互联网
手磨咖啡
互联网科技公司
互联网和科技技术
互联网科技与金融科技
金融科技 互联网金融
万易互联网科技
世界互联网领先科技成果
沐思想互联网科技有限公司
全球科技与互联网公司市值变化
伍佰万互联网科技是干嘛的