Monday, 21 May 2012

When to use Oracle BPEL and OSB?

Often for the newbies of (Oracle) SOA Technologies, this question pops in mind stating when to use BPEL and OSB.

Fundamentally if you read the docs, you will see that both the now Oracle products have similar orchestration capabilities. This blog is written in the intention to clarify the question.

I will cover the one line answer and provide some references I found in the web.

One Liner:

Use of BPEL: State-full, high involvement of Data Manipulation.
Use of OSB: Stateless, Low involvement of Data Manipulation.

For a briefer differentiation, I found another blog in the web space which made my job easier. I have copied the content across to this blog.

Note: the copyright of the below content belongs to the author of the blog page.

Use OSB for:

  • Endpoint routing (providing location transparency) so that we do not care about the physical location of the endpoint.
  • Endpoint abstraction (interface transparency) so that we do not care about the exact data formats required by the endpoint because the OSB will take care of transformations.
  • Load balancing so that we do not care about which of multiple service implementations will actually service a request. 
  • Throttling so that we do not care about how use of services is restricted.  
  • Enrichment so that we do not care about how additional data is provided to the request to match the expected request and response formats.
  • Simple synchronous composition so that we do not care if our abstract service call is actually made up of two or more physical service calls.
  • Protocol conversion so that we do not care what physical transports are being used.
  • Sync/async abstraction so that we can treat services as fire and forget or query response according to the needs of the client.

Use BPEL for:
  • Complex composition of parallel flows that involve more than a couple of services.
  • Long running compositions that may run for minutes, hours or days.
  • Asynchronous compositions that require correlation of requests and responses.
  • Process abstraction that enables us to track processes and their interactions with multiple services.
  • Human workflow

Thursday, 17 May 2012

Enterprise Integration EAI vs SOA vs ESB

Hi All,

Had some time to browse the net and to brush up on the basics. Came across this interesting paper presentation in the site

ggatz Consulting

Though the site was basic with not much information, I continued reading the paper presented by an author: Anurag Goel.I could not find out the age of the paper as could not find the Source location or date of the article.

I found the article from this link:

I have also made the paper available here.

Note: The copyright of the article belongs to the Author.

This paper takes us through the comparison of EAI, SOA and ESB and their current/future role in the IT integration Industry. Also explains the relevance between EAI Patterns and current so called SOA Integration Patterns.

I like the summary section, as follows (on page 6):

1. SOA brings cost effective, reusable and low lead time solutions to an organization
but EAI and SOA are both going to coexist.
2. SOA is more then web services, in fact web services alone can not handle the
complex, secure and SLA based applications of an enterprise.
3. Enterprise service bus would enable low cost integration and would be used by
companies with limited IT resources
4. Packaged EAI solutions in future would have SOA as basic tenet and would continue
to be the prime choice for large scale integration.

Happy Reading.