用Mule重新排队JMS请求

时间:2016-02-04 08:49:58

标签: queue jms mule activemq

我使用带有Mule的JMS component作为ActiveMQ的队列,我希望如果请求排队失败,它会返回队列重试< / strong>最后一个。

在Anypoint Studio中我应该配置什么?

1 个答案:

答案 0 :(得分:1)

只是重新排列你的消息听起来不是一个好主意,想象你有一条消息总是失败,这在某种意义上会在尝试处理消息时导致无休止的递归。

听起来更像你感兴趣的是Rollback Exception Strategy。使用此功能,您可以指定最大重新传送次数,当超过该数量时,您可以将消息放在DLQ(死信队列)或类似的情况下,最好通知某人有关失败的消息。

  

您可以定义回滚异常策略,以确保回滚在流中引发异常的消息以进行重新处理。如果在流中发生错误时无法更正错误,请使用回滚异常策略。通常,您使用回滚异常策略来处理涉及事务的流中发生的错误。如果事务失败,也就是说,如果消息在处理时抛出异常,则回滚异常策略将回滚流中的事务。如果入站连接器是事务性的,则Mule会再次将消息传递到父流的入站连接器以重新尝试处理(即,重新发送消息)。