Is Apache Camel typically deployed as a single application?

29 Views Asked by At

Just getting started with Apache Camel and I am trying to understand how it can be deployed.

Does it make sense to have a single Camel application that is just responsible for routing messages from various queues?

For example, I have several applications writing to an "Orders" queue. Based on some criteria one will end up invoking an RPC in one application, and another will invoke a different RPC.

Do I just deploy a single Camel application that does this routing/invoking?

If I have multiple of these cases, is it common to have a single Camel application handle all such routing?

1

There are 1 best solutions below

3
Doug Grove On

It all depends on your local deployment policies. I have seen deployments where many/numerous queues are managed in a single Camel context with multiple Camel routes. I have seen pretty much the exact same deployment done as a single Camel route per deployment, with numerous deployments.

'Right sizing' your deployments is kind of up to you. I have seen enterprise applications that have both tiny little Springboot Camel routes that just move messages between destinations, and also have a single Camel context with numerous Camel routes and a lot of Spring in the mix.

But, yes, if you have six (for example) 'from: to:' routes in a single Camel context, this is a common deployment.