camel-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Willem Jiang <>
Subject Re: Parallel processing route
Date Tue, 26 Feb 2008 02:01:26 GMT
I have a question about the thread pool DSL.
If we put throw the rest processors into the thread pool , dose it mean 
the processor can parallel running ?
If so , the aggregator could be a critical area for multi-thread accessing.

BTW, AFAIK the cxf consumer is using the thread pool to handle the 
request, that is one thread per request.
For aswin's case , How about ?

"direct:webservice2", "direct:webService3");


Hiram Chirino wrote:
> Instead of using seda.. use direct so that the call does not return
> that that point.  Also try throwing in a thread(maxSize) to allocate a
> thread pool to concurrently
> execute the rest of the pipeline.  For example:
>  from("cxf:bean:soapMessageEndpoint").process(myProc).thread(5).to("direct:a");
>  from("direct:a").aggregator(header("txid"),
> aggregationStratergy).to("bean:testBean?methodName=processSOAP") ;
> Regards,
> Hiram
> On Fri, Feb 22, 2008 at 6:52 PM, aswin.nair <> wrote:
>>  I have a scenario where a Camel CXF consumer receives SOAP/XML messages and
>>  routes through Camel.  The processing is completely synchronous and uses
>>  In/Out model where a response has to be generated for the request and
>>  currently things are working fine.  We call multiple data providers (through
>>  SOAP/Http) in the route and for performance reasons I want these to be
>>  parallel and when the response comes back from these aggregate them to one
>>  message and continue processing.
>>  In short i want to achieve the following
>>   CFX Consumer -> Route ---> parallelly send messages and recieve responses
>>  ---> aggregate response --> further process ----> return
>>  A simple route like does not work in the CXF case as the seda is
>>  asynchronous and causes the call to return to the CXF consumer immediately
>>  after the invocation. The results from the seda a are processed, but are not
>>  send back to the CXF Consumer
>>         from("cxf:bean:soapMessageEndpoint").process(myProc).to("seda:a");
>>         from("seda:a").aggregator(header("txid"), aggregationStratergy)
>>             .to("bean:testBean?methodName=processSOAP") ;
>>  Is there any way we can parallelize the execution and aggregate the output
>>  and continue processing especially in the IN/OUT way using CXF consumer?
>>  Please advice.
>>  --
>>  View this message in context:
>>  Sent from the Camel - Users mailing list archive at

View raw message