GFM3 Orchestration of Web Services - Small Presentation

21
Orchestration of Web Service Chains Jordi Castells Federico Jacoba 0

description

Basic presentation about Web Services Orchestration / Choreography.More centered on Orchestration with BPEL4WS

Transcript of GFM3 Orchestration of Web Services - Small Presentation

Page 1: GFM3 Orchestration of Web Services - Small Presentation

Orchestration of Web Service Chains

Jordi CastellsFederico Jacoba

0

Page 2: GFM3 Orchestration of Web Services - Small Presentation

Topics

■ Introduction■ Composite Services■ Orchestration vs. Choreography■ Standards in Orchestration■ Use Case■ Summary

1

Page 3: GFM3 Orchestration of Web Services - Small Presentation

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

Page 4: GFM3 Orchestration of Web Services - Small Presentation

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

Page 5: GFM3 Orchestration of Web Services - Small Presentation

How to Chain

● Orchestration● Choreography

4

Page 6: GFM3 Orchestration of Web Services - Small Presentation

Orchestration

5

Page 7: GFM3 Orchestration of Web Services - Small Presentation

Orchestration

6

Page 8: GFM3 Orchestration of Web Services - Small Presentation

Choreography

7

Page 9: GFM3 Orchestration of Web Services - Small Presentation

Choreography

8

Page 10: GFM3 Orchestration of Web Services - Small Presentation

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

Page 11: GFM3 Orchestration of Web Services - Small Presentation

Orchestration vs Choreography

OrchestrationOne of the services controls other services. BPEL4WS

ChoreographyMultiple services work together without a clear "Master". WSCI

10

Page 12: GFM3 Orchestration of Web Services - Small Presentation

ChoreographyMultiple services work together without a clear "Master". WSCI

Orchestration vs Choreography

OrchestrationOne of the services controls other services. BPEL4WS

11

Page 13: GFM3 Orchestration of Web Services - Small Presentation

BPEL4WS - Definition

● Business Process Execution Language For Web Services.

● OASIS standard.● XML definition of Orchestrations.

12

Page 14: GFM3 Orchestration of Web Services - Small Presentation

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

Page 15: GFM3 Orchestration of Web Services - Small Presentation

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

Page 16: GFM3 Orchestration of Web Services - Small Presentation

Orchestration Example - Diagram

15

Page 17: GFM3 Orchestration of Web Services - Small Presentation

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

Page 18: GFM3 Orchestration of Web Services - Small Presentation

Implementations BPEL4WS

● Open Source○ Apache ODE○ jBPM○ OW2 Orchestra○ Petals BPEL Engine

● Proprietary○ Active VOS○ BizTalk○ iBolt○ Parasoft BPEL Maestro○ (...)

17

Page 19: GFM3 Orchestration of Web Services - Small Presentation

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

Page 20: GFM3 Orchestration of Web Services - Small Presentation

Thanks

Page 21: GFM3 Orchestration of Web Services - Small Presentation

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/.