【问题标题】:Rabbitmq exchange fanout problemsRabbitmq 交换扇出问题
【发布时间】:2023-05-03 03:31:01
【问题描述】:

为了在我们的 tomcat 集群中传递事件,我们使用 rabbitmq 和交换扇出架构。每个服务器都通过临时队列订阅交换。一切似乎都工作正常,但有时一个或多个消费者会失去连接并且不处理消息,而不会在日志中留下一些有用的信息,这是一些损坏的管道消息的一部分。

顺便说一句,我们在兔子集群和我们的服务器之间使用负载平衡器。

有什么建议可能是问题所在或我们应该检查什么配置?

【问题讨论】:

    标签: tomcat rabbitmq spring-amqp


    【解决方案1】:

    不要在开始时自动确认消息。这样,如果消费者死亡或任何消息重新排队。因此,完成消息处理,然后进行显式确认。

    同样对于rabbit mq集群,重要的是要考虑你想要镜像哪些队列等。

    【讨论】:

      【解决方案2】:
      1. 避免使用临时队列,使用持久队列
      2. 检查负载/平衡器配置,如果日志中有“连接关闭”,可能是 LB 在空闲时间后关闭连接。
      3. 检查您的heartbeart 配置。

      如果可以,请发布日志。

      【讨论】: