1

我正在使用 WSO2MB 2.1.1 版。

我有两个使用持久订阅订阅主题队列的 ESB 进程。

现在,流程已经重新部署,他们不能再听这个话题了。

在 ESB 日志中,我看到:

TID: [0] [ESB] [2015-06-16 12:07:14,364]  INFO {org.wso2.andes.client.AMQConnection} -  Unable to connect to broker at tcp://localhost:5822 {org.wso2.andes.client.AMQConnection}
org.wso2.andes.AMQTimeoutException: Server did not respond in a timely fashion [error code 408: Request Timeout]

在 MB 日志中,我看到:

  TID: [0] [MB] [2015-06-16 12:02:39,015]  INFO {org.wso2.andes.server.protocol.AMQProtocolEngine} -  Cannot subscribe to queue clientID:NewCaseUpdateLocation as it already has an existing exclusive consumer whilst processing:[BasicConsumeBodyImpl: ticket=0, 
queue=clientID:NewCaseUpdateLocation, consumerTag=1, noLocal=false, noAck=false, exclusive=true, nowait=false, arguments=null] 
{org.wso2.andes.server.protocol.AMQProtocolEngine}

如何重新注册此订阅,或强制删除旧订阅?

在 MB 中,我无法取消注册,因为注册是从 ESB 完成的。

4

1 回答 1

0

这似乎是因为之前的持久订阅未正确停用(此处报告了类似问题),因此重新部署 MB 时将不允许两个订阅者拥有相同的持久订阅 ID,除非它是共享订阅

在 MB 3.1.0 的旁注中,您可以从 MB 控制台关闭活跃的持久订阅者。

于 2016-08-03T04:07:18.700 回答