Resequencers

A resequencer can be used to enforce an ordered delivery to the next subsystem. It will hold on to a message till all messages numbered before it have been delivered. For example, if messages have been numbered 1 to 10 and if the message numbered 8 arrives sooner than the messages numbered 1 to 7, it will hold it in temporary storage and will be delivered only when the delivery of messages numbered 1 to 7 is complete. The SEQUENCE_NUMBER header of the message is used by resequencer to track the sequences. It can be considered as a special case of aggregator, which holds on to the message based on a header value but does not do any processing on the messages:

<int:resequencer input-channel="fetchedFeedChannelForAggregatior" output-channel="cahinedInputFeedChannel" ...

Get Spring Integration Essentials now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.