camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Alexey Vinogradov <alexey.vinogra...@db.com>
Subject Jms endpoint: process messages in parallel, but keeping predefined order
Date Tue, 14 Jun 2011 07:46:03 GMT
I need to solve the following problem:
There is JMS queue where the messages are consumed from. Each message has
business Id and version. The task is to process messages in parallel, but
messages with the same ID should be processed in the order defined by
version. The processing should be reliable.  It means that if any error
happens while message is being processed the JMS message should not be
acknowledged, to be read again when the error cause is eliminated. No
messages can be lost due to any error.

Example:
channel contains messages: id[1]ver[1], id[2]ver[1], id[3]ver[1],
id[1]ver[2]. First 3 messages can be processed in parallel as Ids are
different, but the 4-th message cannot be processed before the processing of
the 1-st version completes successfully.

There is a custom solution based on bare JMS API. I wonder if there is any
out-of-the box way to solve this task using Camel?


--
View this message in context: http://camel.465427.n5.nabble.com/Jms-endpoint-process-messages-in-parallel-but-keeping-predefined-order-tp4487032p4487032.html
Sent from the Camel - Users mailing list archive at Nabble.com.

Mime
View raw message