On Mon, Jul 15, 2013 at 6:42 PM, salemi <sal...@avaya.com> wrote: > I am not sure if I can use concurrent consumer option since I have to keep > the order of messgaes for the buckets. >
Message groups are meant specially for this scenario. A group is assign to at most 1 consumer at a time. Therefore, until the consumer is not freed from its current task, it will not process the next message. I like your idea to have a route that calculates the Group header but doing > that is it not going to be the bottleneck for the processing. I have to run > at least 1000 messages per second trough camel. No, because apart from being multithreaded, the route is asynchronous and it simply pushes a message onto another queue. It doesn't wait for the JavaSpaces processing to finish. How can you grab 100 messages at the time from JMS in a route? camel-jms / camel-activemq are based on Spring JMS which AFAIK doesn't support JMS message batching. You could try out the camel-sjms (Simple JMS) component which does support this pattern. Or else, you could use the Aggregator EIP, but I don't see much value in this particular scenario. Regards, *Raúl Kripalani* Apache Camel PMC Member & Committer | Enterprise Architect, Open Source Integration specialist http://about.me/raulkripalani | http://www.linkedin.com/in/raulkripalani http://blog.raulkr.net | twitter: @raulvkM