GFM3 Orchestration of Web Services - Small Presentation
description
Transcript of GFM3 Orchestration of Web Services - Small Presentation
Orchestration of Web Service Chains
Jordi CastellsFederico Jacoba
0
Topics
■ Introduction■ Composite Services■ Orchestration vs. Choreography■ Standards in Orchestration■ Use Case■ Summary
1
Introduction
● SDIs facilitated the distribution, access, & use of Geo-information
● Distributed systems inter-operating through
standards set by OGC, IS, W3C ● Various Web-services (WMS, WFS, WCS, WPS,
etc.)
2
Chained Services
● No single service can possibly satisfy every user's requirements
● For more complicated tasks, users need services that are chained together
● Service Chains:○ Sequence is determined & coordinated
○ In adjacent: occurrence of first is necessary for the second
● Service chains can be reused
3
How to Chain
● Orchestration● Choreography
4
Orchestration
5
Orchestration
6
Choreography
7
Choreography
8
How to Chain
● Orchestration○ Involves a central entity that conducts the participating services○ The services involved are oblivious of their participation○ Only the 'orchestrator' is aware of the process that is going on.
● Choreography○ No central orchestrator○ Participant services are aware of the other services to inter-
operate with, and when to perform their tasks
9
Orchestration vs Choreography
OrchestrationOne of the services controls other services. BPEL4WS
ChoreographyMultiple services work together without a clear "Master". WSCI
10
ChoreographyMultiple services work together without a clear "Master". WSCI
Orchestration vs Choreography
OrchestrationOne of the services controls other services. BPEL4WS
11
BPEL4WS - Definition
● Business Process Execution Language For Web Services.
● OASIS standard.● XML definition of Orchestrations.
12
BPEL4WS - SyntaxFunctionality BPEL4WS tag
Variable definition <variables>
Variable Assignment <assign>
Web Service calling <invoke>
Recieve petition <recieve>
Structured Programming <if> <then> <else> <while> <switch>
Batch Processing <sequence>
Parallel Processing <flow>
Exception handling <FaultHandler>
13
Orchestration Example - Description
● A User has a position and a desired street to find a restaurant.
● Given that information, we will retrieve a list of
restaurants and a route to one of them. ● We are assuming that all the web services exist.
14
Orchestration Example - Diagram
15
Orchestration Example - BPEL4WS1. <process name="RestaurantsRoute" (...)>2. <partnerLinks> <!-- [CODE] Partner Links--></partnerLinks>3. <variables> <!-- [CODE] Definition of variables to use--> </variables>4. <sequence>5. <!-- Recieve Petition -->6. <receive partnerLink="client" (...) />7. <assign>8. <copy>9. <from variable="inputparamaters" part="lat"/>
10. <to variable="ws1INPUT" part="lat"/>11. </copy>12. (...) 13. </assign>
14. <!-- sequence of invocations-->15. <invoke partnerLink="WS1-geocodin" (...) />16. <invoke partnerLink="WS2-POI-Listing" (...) />17. <invoke partnerLink="WS3-Routing" (...) />18. <!-- [CODE] assign all the results to responsedata-->19. <reply partner=”client” (...) operation=”response” container=”responsedata”/>20. </sequence>21. </process>
16
Implementations BPEL4WS
● Open Source○ Apache ODE○ jBPM○ OW2 Orchestra○ Petals BPEL Engine
● Proprietary○ Active VOS○ BizTalk○ iBolt○ Parasoft BPEL Maestro○ (...)
17
Summary
● Composite Services are needed for more complex tasks● Chaining can be done either by Orchestration or
Choreography● Orchestration offers some advantages primarily due to
its centralized set-up● Standards are available
17
Thanks
Further ReferencesAlbreshne, A., Fuhrer, P., & Paquier, J. (2009). “Web services orchestration and composition: Case study of web services composition – A working paper”. http://diuf.unifr.ch/drupal/softeng/sites/diuf.unifr.ch.drupal.softeng/files/file/publications/internal/WP09-03.pdf. Business Process Execution Language for Web Services 1.1http://download.boulder.ibm.com/ibmdl/pub/software/dw/specs/ws-bpel/ws-bpel.pdf Daniel, F. & Pernici, B. (2006). Insights into Web Service Orchestration and Choreography. International Journal of E-Business Research, 2(1), 58-77. Juric, M. A hands-on introduction to BPEL. htttp://www.oracle.com/technetwork/articles/matjaz-bpel1-090575.html. Percival, G. (2002). “ISO 19119 and OGC service architecture”, FIG XXII International Congress Washington, D.C. USA (April 19-26 2002) Peltz, C. (2003). Web services orchestration - A review of emerging technologies, tools, and standards. Hewlett Packard, Co. W3C. Web service choreography interface (WSCI) 1.0. W3C Note 8 August 2002. http://www.w3.org/TR/wsci/.