Differences between Camel and BPEL

The concept of SOA is easy to understand, but I am not familiar with architectures and technologies for integrating enterprise services such as BPEL and Apache Camel.

I know that BPEL helps organize services, and Camel is an implementation of corporate integration templates. I am currently reading the well-known books of Enterprise Integration Patterns.

But the line between EIP and orchestration seems very thin to me. In my opinion, Camel also organizes services in its own way. In addition, Camel provides many connectors, so you can easily use a variety of protocols.

Is a camel better than BPEL?
Or can you do something with BPEL that you cannot do with Camel?
What kind?
What I read, it seems that Camel is better than BPEL for organizing REST services: is that true?

+8
rest web-services soa apache-camel bpel
source share
2 answers

Bpel is more of a language / standard for bpm and service implementations. This is a bit like an apple and pears, since a camel is an implementation of an integration mechanism. You will probably want to take a closer look at bpel (or bpmn) to automate a high-level business (for example, in addition to the flow of purchases with multiple systems, lengthy processes, and business logic). In Camel, you usually handle more technical aspects, such as routing and wired protocol translation. As a rule, in rather statelessness.

Of course, there is something in between - for example, routing between homogeneous protocols, where any decision will be made. For example, your example of relaxation. Also note that Camel can be run along with Orchestration tools like activti and apache ode.

+6
source share

We tried to answer this question many times in my previous work. Our products were TIBCO BusinessWorks (something like Apache Camel) and TIBCO iProcess (something like Apache ServiceMix).

And we came to a simple conclusion:

  • If your process is lengthy (usually you need to pause and wait until it is approved by the manager), you want BPEL.
  • If your processes are shorter and there are no people, you need integration (Camel).

This is not always applicable, and these two worlds do not have strong boundaries, but you can simplify this. And one more note - you can do BPEL-like processes with integration products and vice versa. This is just a matter of approach. But if you adhere to these rules, you should be able to distinguish between the two. There are many other aspects, but this I consider the most important.

+7
source share

All Articles