(57) The invention provides a system and a computer-implemented method of sequencing distributed
asynchronous messages in a distributed and parallel system having a plurality of inbound
handlers (810, 820, ..., 840) and a plurality of outbound handlers (860, 870, 880,
890), the method comprising the following steps performed with at least one data processor:
receiving in an inbound handler (810) an incoming message (801-1) with a sequence
correlation value that identifies a sequence comprising the incoming message,
checking for a sequence status of said sequence in a sequence storage (800);
determining if the incoming message is the next message to be processed for maintaining
the order of the messages in said sequence;
i.if the sequence status indicates that none of the outbound handler (860, 870, 880,
890) is currently processing a message for said sequence and if the incoming message
is determined to be the next message to be processed for said sequence, then forwarding
the incoming message to a queue storage (850) and subsequently forwarding it to an
available outbound handler (860, 870, 880, 890) for processing;
if the sequence status indicates that at least one of the outbound handlers (860,
870, 880, 890) is currently processing a message of said sequence; or if the queue
storage (850) already comprises a message to be processed for said sequence; or if
the incoming message is determined not to be the next message to be processed for
said sequence, then storing the incoming message (801-1) in a memory of an overflow
storage (806) to keep for further processing.
|

|