Title: Asif Iqbal
1From Centralized Orchestration to De-centralized
Orchestration of Web Services
By Asif Iqbal
2Agenda
- Introduction
- What is a Web Service?
- What is Service Oriented Computation?
- What is Orchestration of Web Services?
- Why Orchestrate web services?
- BPEL (Business Process Execution Language)?
- Centralized Orchestration of Web Services
- Decentralized orchestration of Web Services
- Example 01 (Add two Numbers)?
- Rules
- Examples 01 (Apply above rule)?
- Example 02 (divide Two Numbers)?
-
2
Asif Iqbal
3Agenda
- Example 02 (Apply above rule)?
- Related Work
- Conclusion
Asif Iqbal
3
4Introduction
- What is a Web Service?
- Web Service is defined by the W3C as "a software
system designed to support interoperable Machine
to Machine interaction over a network." - What is Service Oriented Architecture?
- SOA Magazine define SOA as
- SOA is an approach to delivering software
capabilities through building blocks called
"services."
4
Asif Iqbal
5Introduction
- What is Orchestration of Web Services?
- Web service orchestration is a task of
combining and linking existing web services to
create new business process. - Why Orchestrate Web Services?
- The right music played by the right
instruments at the right time in the right
combination thats good orchestration, said
Leonard Bernstein, the great conductor and
composer. - Like a music composer, the Web Service
composer has to select the necessary Web
Services, to decide how they are going to
interact with each other.
5
Asif Iqbal
6BPEL (Business Process Execution language)
- Important technology of SOA
- BPEL is an XML-based language.
- A BPEL process consists of steps. Each step is
called an activity. - Enables easy and flexible orchestration of
services into business processes - Basic Activities the ones that do something
- Invoke (Invoking Web services)?
- Receive (Waiting for the request)?
- Assign (Manipulating data variables)?
- Structure Activities thet ones that organize
basic activities without doing anything by
themselves - Sequence (set of activities that will be
invoked in an ordered sequence)? - Flow (a set of activities that will be invoked
in parallel)? - Switch (for implementing branches)?
6
Asif Iqbal
7Orchestration of Web Services
- Two Methods for orchestration of web services
- Centralized Orchestration of Web Services
- Decentralized orchestration of Web Services
7
Asif Iqbal
8Centralized Orchestration of WS
A composed web service interacts with set of
published web services and satisfy a given
composition requirements.
8
Asif Iqbal
9Centralized Orchestration of WS
- All control is at one place
- Services are isolated from each other
- Every service will communicate with composed
service - All data is transferred between various
services via centralized coordinator
9
Asif Iqbal
10Centralized Orchestration of WS
- This approach (centralized composition of web
services) gives many advantages like - Efficient Monitoring
- Fault Handling
- Maintenance
- But also have some cons like
- The composed service is responsible for
co-ordination of all data and control flow
between services and hence become performance
bottleneck. - All data is transferred between various
services via centralized composed service, this
lead to unnecessary traffic on net work. - Single point of failure
Asif Iqbal
10
11Decentralized Orchestration of WS
- In de-centralized orchestration BPEL program
is partitioned into independent sub programs that
interacts with each other without any centralized
control - In decentralized composition a wrapper
(derived from composed service) is placed on each
service - Wrapper communicates with other wrappers and
forms P2P interconnection. Wrapper contains
activities.
11
Asif Iqbal
12Decentralized Orchestration of WS
12
Asif Iqbal
13Example 01
- User
- Send two numbers
- Receive Addition Result
- Add Two Numbers
- Receive two numbers
- Apply operation
- Send back addition result
Asif Iqbal
13
14Example 01 (Centralized Orchestration)
Asif Iqbal
14
15Rules
- Pick interface activities of each service from
centralized composition - Activities will be partitioned and placed in a
wrapper of service for which picked activities
were interface in centralized composition - For Assignment activities, check dependency of
assignment activities - These activities will be a part of wrapper
that have activities on which assignment
activities are dependent - In case of conditional behavior (if)?
- Check dependency of condition
- This will be a part of wrapper that has
activity/activities on which condition has data
dependency.
Asif Iqbal
15
16Rules
- In order to control Execution and to preserve
control and data dependency of centralized
specification, activities distributed in
different wrappers must be linked. - Add activities to transfer control from one
wrapper to another - To transfer control (Invoke)?
- To get control (receive)?
Asif Iqbal
16
17Example 01 (Decentralized Orchestration)
Asif Iqbal
17
18Example 02
- User
- Send request to divide two numbers
- Receive Result
- Divide
- Receive Request to divide two numbers
- Send back results of division
Asif Iqbal
18
19Example 02 (Centralized Orchestration)
Asif Iqbal
19
20Example 02 (Dcentralized Orchestration)
Asif Iqbal
20
21Related Work
- 45 Focus on the Use of Program Dependence
Graph (PDG) in partitioning of composite web
service application for decentralized
orchestration - Code Partitioning Algorithm to partition a
BPEL program represented as a PDG. - Tool to partition composite web service
specification and also generate WSDL for each of
partitioned fragment. - Yildiz and Godart work is based on
Inter-Organizational processes
Asif Iqbal
21
22Conclusion
- Decentralized Composition of web services
offer benefits like - There is no centralized coordinator which can
be a potential bottleneck. - Because of distributed wrappers network
traffic is reduced and improves transfer time. - Distributing the control improves concurrency.
- Also introduced some cons like
- Fault Handling more complex
- Increased complexity (P2P interconnection)?
22
Asif Iqbal
23References
1 M Pistore, P Traverso and P Bertoli Automated
composition of web services by Planning in
Asynchronous Domains. 2 Annapaola Marconi,
Marco Pistore and Paolo Traverso Specifying data
fl0w Requirement for the automated composition of
web services 3 Ustun Yildiz , Claude Godart
Centralized vs Decentralized conversation based
Orchestration 4 Mangala , Satish and Vivek
Decentralized execution of composite web
services 5 G Cahfle , S Chandra, V Mann
Decentralized Orchestration of composite web
services
2424
Asif Iqbal