启动时禁用Mule流 - 继续或忽略启动失败

时间:2018-01-09 15:37:53

标签: exception-handling mule mule-component anypoint-studio

Mule项目有多个流,其中一些流端点在测试期间启动时可能处于脱机状态。任何流中的端点失败都会导致整个Mule项目无法部署。控制台记录已部署域状态但应用程序状态= FAILED。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ Starting app 'test'                                    +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
. Root Exception was: Connection refused: connect. Type: class java.net.ConnectException
ERROR 2018-01-09 10:31:08,287 [main] org.mule.module.launcher.application.DefaultMuleApplication: 
********************************************************************************
Message               : Could not connect to broker URL: tcp://localhost:61616.
                        Reason: java.net.ConnectException: Connection refused: connect
JMS Code              : null
*************************************************************
* Application "test" shut down normally on: 1/9/18 10:31 AM *
* Up for: 0 days, 0 hours, 0 mins, 1.449 sec                *
*************************************************************
ERROR 2018-01-09 10:31:08,413 [main] org.mule.module.launcher.DefaultArchiveDeployer: 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ Failed to deploy artifact 'test', see below            +
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
org.mule.module.launcher.DeploymentStartException: ConnectException: Connection refused: connect

尝试在可能存在启动连接问题但对运行项目没有影响的流上设置initialState =“stopped”。项目仍然无法运行且没有正在运行的流程。

将CatchExceptionStrategy添加到可能在启动时失败的入站端点不可用。在流程中也尝试了“直到成功”的范围。

特别是有一些JMS和Web服务组件可能在开发和测试期间的不同时间脱机。想要配置流以允许整个项目继续,即使单个组件/流在启动时无法连接。想要管理具有多个流的单个项目,以便某些流可能不活动。

Environment: Anypoint Studio and Mule 3.9.0 EE. 

1 个答案:

答案 0 :(得分:2)

如果您希望部署成功,即使您的服务不可用,您也需要在blocking=false的JMS连接器上提供重新连接策略。例如:

<jms:activemq-connector name="Active_MQ" username="a" password="b" brokerURL="tcp://localhost:61616" validateConnections="true" doc:name="Active MQ">
  <reconnect-forever blocking="false"/>
</jms:activemq-connector>

有关重新连接策略的更多信息,请参阅MuleSoft文档:https://docs.mulesoft.com/mule-user-guide/v/3.9/configuring-reconnection-strategies如果需要。