Spring集成 - 使用持久消息进行可靠的消息传递

时间:2012-09-21 05:51:38

标签: spring integration messages

我目前的设置(部分)是这样的:

<channel id="chainInboundChannel">
  <queue message-store="mongoDbMessageStore"/>
</channel>

<chain id="myChain" input-channel="chainInboundChannel">
  <service-activator ref="service1" ... />
  <service-activator ref="service2" ... />
  <service-activator ref="service3" ... />
  <service-activator ref="service4" ... />
</chain>

据推测,我的消息现在仍然存在。对于消息在队列中的时间,这似乎是正确的。但是当链接收到消息时,它将从消息存储中删除。因此,如果应用程序在消息处理过程中关闭,例如'service3',信息丢失了。

如何在链内处理消息时保持消息的持续存在?

可选 如果任何服务在某些特定情况下返回null,该怎么办?在这种情况下,应该删除该消息,因为它已经到了生命周期的末尾。

0 个答案:

没有答案