Spring mvc rabbitmq:消息不被使用者使用,但发布者可以发布消息

Spring mvc rabbitmq:消息不被使用者使用,但发布者可以发布消息,spring-mvc,rabbitmq,spring-rabbit,Spring Mvc,Rabbitmq,Spring Rabbit,我正在使用rabbitmq在我的服务中进行消息传递。假设有两个微服务A和B 有3个以上的交换,并且相应的队列在中间 A是出版商,B是消费者。从发送消息时,它正在队列中成功更新(能够在控制台中看到队列中的消息增加)。但在这里,消费者无法接收信息。以前它是有效的 但对于其他交换和队列,消费者工作正常 我试图清除队列并重新启动应用程序,但没有帮到我。队列中始终有4条未到达的消息,其余消息已准备就绪。最后,我删除了queue和exchange以及各自的路由密钥,并重新创建了它们。那么一切都很好 有人能帮

我正在使用rabbitmq在我的服务中进行消息传递。假设有两个微服务A和B

有3个以上的交换,并且相应的队列在中间

A是出版商,B是消费者。从发送消息时,它正在队列中成功更新(能够在控制台中看到队列中的消息增加)。但在这里,消费者无法接收信息。以前它是有效的

但对于其他交换和队列,消费者工作正常

我试图清除队列并重新启动应用程序,但没有帮到我。队列中始终有4条未到达的消息,其余消息已准备就绪。最后,我删除了queue和exchange以及各自的路由密钥,并重新创建了它们。那么一切都很好


有人能帮我吗?发生了什么事。为什么它不起作用?

有时当消息处理出现故障时,如果我们抛出错误。若方法继续抛出错误,那个么它将在无限循环(队列->处理->队列>..)中停止

对于所有在队列中的其他消息,通过增加批处理并发性,我们可以执行其他消息。但unack信息会在那里。只有当有人阻止消费者时才会出现


现在我有一个问题,我可以为未确认的消息处理设置重试限制吗。如果有人知道这一点,那么可以在这里提供帮助。

此类问题通常是由用户代码中某个地方的线程造成的。下一次,进行线程转储以查看线程正在执行的操作。感谢@GaryRussell..thread for listener was注释,它会消耗2-3条消息并停止侦听。它的状态显示,它是可运行的..但表现得像死了一样:P。。下次我会小心的