我正在研究mule 3.5,rabbitmq connector 3.6和RabbitMQ 3.6.0当我部署我的应用程序时,mule不会在我的队列中创建一些消费者,但如果我多次重新部署我的应用程序,它将创建所有的监听器完全。
这是我的代码的一部分:
Amqp连接器:
<amqp:connector name="amqpRabbitMQConnector" host="${rabbitmq.host}" username="${rabbitmq.username}" password="${rabbitmq.password}" validateConnections="true" requestedHeartbeat="60" activeDeclarationsOnly="true">
<reconnect-forever frequency="2000" blocking="false"/>
</amqp:connector>
入站端点:
<amqp:inbound-endpoint queueName="${queue.businessSearchRequest}" exchange-pattern="one-way"connector-ref="amqpRabbitMQConnector"/>
出站端点:
<amqp:outbound-endpoint connector-ref="amqpRabbitMQConnector" exchangeName="${exchange.bizSearchResponse}" exchangeType="topic" exchangeDurable="true" routingKey="${core.routing.key}"/>
实际上,我的交换绑定到了rabbitmq中的队列,我可以看到交换机将消息放入队列并且队列深度增加但是在rabbitmq浏览器中没有消费者监听队列因此,mule无法处理它
答案 0 :(得分:0)
问题是在AmqpMessageReceiver初始化之前注册了一些队列侦听器。我改变了我的xml命令并解决了问题。