Dear All, I'm suddenly feel a bit loss on the usage and behaviour of camel and will like to seek clarification.
<camel:camelContext> <route id="processRequest"> <from uri="activemq:topic:request"/> <bean ref="eventProcessor" method="processEvent"/> </route> <route id="sendResponse"> <from uri="direct:myProxy"/> <setProperty propertyName="result"> <method ref="convertor"/> </setProperty> <bean ref="strategyManager" method="isStrategyCompleted(${property.result})"/> <choice> <when> <simple>${body}</simple> <bean ref="camelJMS" method="sendComplete(${property.result})"/> </when> </choice> </route> </camel:camelContext> Given the scenario: T=0; Request 1 published to activemq:topic:request T=1; Request 2 published to activemq:topic:request T=3; Request 3 published to activemq:topic:request T=60; (External system place the result file for Request 2 into a folder), picked up by <from uri="direct:myProxy"/> in route sendResponse My question. 1. Does camel start a new instance for all new message at activemq:topic:request 2. If it does, will all 3 instances perform route sendResponse, even though its not for them? 3. Camel is single instance, but will help to keep track of the exchanges for you? (Very vague, and I not sure whether I imagining the correct scenario. 4. Any other behaviour? I doubt it will hang at route 2, while waiting for it to be trigger even if there are news messages on the activemq:topic:request Thanks and Best Regards, Zuff -- View this message in context: http://camel.465427.n5.nabble.com/Camel-Confusion-tp5720952.html Sent from the Camel - Users mailing list archive at Nabble.com.