Return-Path: Delivered-To: apmail-camel-users-archive@www.apache.org Received: (qmail 57929 invoked from network); 6 Aug 2010 08:34:05 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 6 Aug 2010 08:34:05 -0000 Received: (qmail 88650 invoked by uid 500); 6 Aug 2010 08:34:05 -0000 Delivered-To: apmail-camel-users-archive@camel.apache.org Received: (qmail 88363 invoked by uid 500); 6 Aug 2010 08:34:02 -0000 Mailing-List: contact users-help@camel.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@camel.apache.org Delivered-To: mailing list users@camel.apache.org Received: (qmail 88346 invoked by uid 99); 6 Aug 2010 08:34:00 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Aug 2010 08:34:00 +0000 X-ASF-Spam-Status: No, hits=4.2 required=10.0 tests=FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,SPF_HELO_PASS,SPF_NEUTRAL,T_TO_NO_BRKTS_FREEMAIL,URI_HEX X-Spam-Check-By: apache.org Received-SPF: neutral (athena.apache.org: 216.139.236.158 is neither permitted nor denied by domain of slew77@googlemail.com) Received: from [216.139.236.158] (HELO kuber.nabble.com) (216.139.236.158) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 06 Aug 2010 08:33:55 +0000 Received: from sam.nabble.com ([192.168.236.26]) by kuber.nabble.com with esmtp (Exim 4.63) (envelope-from ) id 1OhIMx-0000lO-0j for users@camel.apache.org; Fri, 06 Aug 2010 01:33:35 -0700 Date: Fri, 6 Aug 2010 01:33:35 -0700 (PDT) From: slew To: users@camel.apache.org Message-ID: <1281083615017-2266422.post@n5.nabble.com> Subject: Deploying to the same camel context MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Hi all I'm running camel routes from servicemix. This question relates to both camel and servicemix, so please let me know if I should repost to the servicemix forum instead. I have a question about whether it's possible to deploy camel routes defined in separate service assemblies to the same camel context. For the system I'm working on, depending on the service invoked a configurable routing slip is executed. The steps in the routing slip are resolved at runtime, allowing the route to be adjusted easily, i.e. exactly the purpose of a routing slip. The routing slip steps are packaged as a jbi service assembly containing a camel service unit. The routing slip is invoked from a separate service assembly. So for example someone might create an audit trail extension, package it up in a sa, deploy it to servicemix and then start using it in the routing slips for the services that require it. Because these components are in different camel contexts, messages are currently exchanged using the vm component. The advantage of this approach is that these extensions are stand-alone and so can be created without editing anything else in the system. They can be deployed, undeployed or replaced very easily. The big disadvantage, and the reason for my post is that each extension must be configured to have enough concurrent consumers to not caues a bottleneck, e.g. worst case is if there could be x routing slips executed at once each extension should have up to x concurrent consumers. As the system grows there could be hundreds of deployed extensions all with their own thread pool of concurrent consumers waiting for something to happen. If these extension routes were in the same camel context, the 'direct' call would solve the problem as the route would run in the same thread as the caller. My question is, is there a better way to package and deploy these extension routing slip steps. Is there a way to deploy them to the already running routing slip context? Sorry if my explanation of the problem isn't clear, I'm happy to expand on anything. Thanks, Steve. -- View this message in context: http://camel.465427.n5.nabble.com/Deploying-to-the-same-camel-context-tp2266422p2266422.html Sent from the Camel - Users mailing list archive at Nabble.com.