Networking 在代理网络上使用临时队列进行ActiveMQ故障切换?

Networking 在代理网络上使用临时队列进行ActiveMQ故障切换?,networking,activemq,failover,reply,Networking,Activemq,Failover,Reply,我们有一个由四个经纪人组成的网络,两个前端和两个后端。我将他们称为FB1 FB2 BB1 BB2。它们在一个正方形中联网,如下所示: FB1 .... FB2 . . . . . . BB1 .... BB2 网络连接设置为排除特定队列,但允许转发所有其他队列和主题。网络连接器在前端和后端之间定义了故障切换,因此,例如,如果BB1发生故障,则FB1应进行故障切换,并与BB2建立新的网络连接 连接到每一对的客户端也使用故障转移,因此,如果其中一对发

我们有一个由四个经纪人组成的网络,两个前端和两个后端。我将他们称为FB1 FB2 BB1 BB2。它们在一个正方形中联网,如下所示:

FB1 .... FB2
 .        .
 .        .
 .        .
BB1 .... BB2
网络连接设置为排除特定队列,但允许转发所有其他队列和主题。网络连接器在前端和后端之间定义了故障切换,因此,例如,如果BB1发生故障,则FB1应进行故障切换,并与BB2建立新的网络连接

连接到每一对的客户端也使用故障转移,因此,如果其中一对发生故障,它们将故障转移到另一对并继续通信。i、 e.客户端连接到FB1,FB1失败,客户端故障切换到FB2

在我的问题场景中,客户端向前端代理发送InOut请求回复消息。前端代理将此消息转发给后端代理,在后端代理中使用该消息并生成响应。然后通过临时队列将响应反馈给原始客户端

如果在此交换期间我杀死了一个代理,则客户端将成功地故障切换到其他代理。但是,随后的输入请求回复消息失败,我看到以下异常:

org.springframework.jms.InvalidDestinationException: Cannot publish to a deleted Destination: temp-queue://I...

有人能解释一下为什么会发生这种情况,以及我如何防止这种情况发生吗?

临时队列不是群集的。在执行请求/应答时,需要添加一些逻辑,以便在发生故障转移时为InOut重新创建临时队列-这不是自动发生的