RabbitMQ-高可用性队列

RabbitMQ-高可用性队列,rabbitmq,spring-rabbit,Rabbitmq,Spring Rabbit,我有一个带有两个节点的RabbitMQ集群和一个声明队列(与主题交换绑定)的侦听器(两者都连接)。队列被声明(显然是在节点1)并复制到节点2(如预期的那样)。到目前为止还不错 但是当节点1关闭时,队列将从节点2删除,使我的侦听器崩溃。以下是队列参数: exclusive=“false” 持久=“真实” 自动删除=“假” 显然,这似乎不是一种正确的高可用性行为。问题是,当至少有一个节点启动时(无论哪个节点启动),如何创建此队列并使其保持可用 查看rabbit管理UI以确保队列按预期声明。@Ga

我有一个带有两个节点的RabbitMQ集群和一个声明队列(与主题交换绑定)的侦听器(两者都连接)。队列被声明(显然是在节点1)并复制到节点2(如预期的那样)。到目前为止还不错

但是当节点1关闭时,队列将从节点2删除,使我的侦听器崩溃。以下是队列参数:

  • exclusive=“false”
  • 持久=“真实”
  • 自动删除=“假”

显然,这似乎不是一种正确的高可用性行为。问题是,当至少有一个节点启动时(无论哪个节点启动),如何创建此队列并使其保持可用

查看rabbit管理UI以确保队列按预期声明。@GaryRussell:是,它按声明的方式列出,但处于“关闭”状态。当我点击它时,会出现这样一条消息:“你点击的对象找不到;它可能已经在服务器上被删除了”你是如何使它透明的?通过策略还是使用队列声明参数?显示您的配置。使用策略。我刚刚找到了解决方案:将“ha同步模式:自动”添加到策略定义中,它可以正常工作。谢谢