如果具有JMS重试连接,则无法取消部署mule流

时间:2018-01-16 13:24:04

标签: mule mule-esb

我正在使用Mule社区-3.8版本。我有一个场景,我需要通过JMS连接MQ,并且应该在永远模式下进行重试策略连接。它很好地解决了发生MQ /频道重启的快乐场景。

但是如果队列管理器关闭并且Mule尝试永久连接,那么即使我删除了流目录和锚文件,我仍然无法取消部署流程,但它仍会重试。

我觉得这是骡子中的一个漏洞?任何人都可以建议这是现有行为吗?

代码段

<spring:beans>
    <spring:bean id="ConnectionFactory" name="ConnectionFactory" class="com.ibm.mq.jms.MQConnectionFactory">            
    </spring:bean>
</spring:beans>

<jms:connector name="jms-conn" username="xxxx" password="xxxx" specification="1.1" connectionFactory-ref="ConnectionFactory" validateConnections="true" numberOfConsumers="1" persistentDelivery="true">
    <reconnect-forever frequency="30000" />
</jms:connector>

此外,如果我在jms:连接器中使用blocking = false,我可以取消部署流程。但我真的不需要在我的用例中使用该功能。

1 个答案:

答案 0 :(得分:0)

JMS重试选项将在单线程模型中工作,因此可以保留新的线程进程,直到成功重新连接为止。