3
votes

I'm very new at WSO2 stack and wonder when I should use WSO2 ESB proxy service and when – create business process via BPEL?

I think they are doing the same thing – performing a task via services composition and some mediation.

2
It is hard to give a general rule here. Could you elaborate a bit more and describe a concrete problem you are facing? "performing a task", any software does that.joergl
Sure! What I need from WSO2 is some services' sequence performing some task. I take this web-services' list and compute some their properties like latency, availability, mean time to repair etc. Then I suggest (maybe not) better services' composition for this task.Dmitry Dushkin
Still main question -- is there use case difference between proxy service with sequence and business-process (BPEL)? As far as I understand proxy service written in WSO2's XML notation and business-process is written in BPEL standard.Dmitry Dushkin
Have you looked at this question? Maybe the answers there help. I am not an expert on WSO2 proxy services, but the notation they use is not BPEL. One advantage of BPEL might be that it is an open standard that is independent of WSO2.joergl
joergl, thank you for link and answer. It's a bit relevant, but do not give answer. Well, yes, I also think the main difference is that business process is just standardised.Dmitry Dushkin

2 Answers

5
votes

There is a fundamental difference between ESB and BPEL.

The role of ESB is to provide various non-functional properties to the business requests. ESB is thus used for e.g. mediation, transformation, security and virtualization/proxying of the requests. While it can do some simple message-enrichment using sequence diagrams, its primary purpose is to mediate messages between various services/hosts in the system.

On the other hand, BPEL is dedicated to implement business services and handle complex business workloads. Therefore, the role of the BPEL is to provide the functional properties to the business process- e.g. implementing the actual business process logic.

ESB and BPEL thus together deliver the separation-of-concerns which is often emphasized by component and service-oriented architectures.

2
votes

If you have a well defined long running Business process you need to use WSO2 BPS. You can use WSO2 ESB for short spanning process with a shorter life cycle. WSO2 BPS has many integration points that you can control the Business process with features such as Human Tasks. On the other hand ESB has the capabilities but it may not be convenient and optimized as BPS for the long running well defined business processes.