applications of soa and web services in grid computing

104
APPLICATIONS OF SOA AND WEB SERVICES IN GRID COMPUTING Thanh H. Pham – Quynh Le 19 May 2010

Upload: yht4ever

Post on 11-May-2015

2.569 views

Category:

Education


1 download

TRANSCRIPT

Page 1: Applications of SOA and Web Services in Grid Computing

APPLICATIONS OF SOA AND WEB SERVICES IN GRID

COMPUTINGThanh H. Pham – Quynh Le

19 May 2010

Page 2: Applications of SOA and Web Services in Grid Computing

2

31.900.000

Page 3: Applications of SOA and Web Services in Grid Computing

3

• Service-oriented Architecture (SOA)1

• Web Services (WS)2

• Open Grid Service Architecture (OGSA)3

• Web Services Resource Framework (WSRF)4

Today’s Overview

Page 4: Applications of SOA and Web Services in Grid Computing

4

Objectives

• SOA – An overview• WS & Related Technologies• OSGA & WSRF Overview• Applications of

SOA and WSin Grid Computing

Page 5: Applications of SOA and Web Services in Grid Computing

5

SERVICE-ORIENTED ARCHITECTURE

Page 6: Applications of SOA and Web Services in Grid Computing

6Image from Dr. Dang Tran Khanh slide

A Case Study

Page 7: Applications of SOA and Web Services in Grid Computing

7

Key terms[1]

• An architecture:–Formal description of a system–Defines system purpose, functions–Defines system externally visible

properties, and interfaces.

[1] OGSA Glossary of Terms v1.0: http://www.gridforum.org/documents/GFD.44.pdf

Page 8: Applications of SOA and Web Services in Grid Computing

8

Key terms (cont.)

• A service–Is a software component –Can be accessed via a network–Provides functionality to a requester

Page 9: Applications of SOA and Web Services in Grid Computing

9

Key terms (cont.)• Service-oriented architecture refers to a

style of building reliable distributed systems that deliver functionality as loose coupling services

• Technically, then, the term SOA refers to the design of a system, not to its implementation

Page 10: Applications of SOA and Web Services in Grid Computing

10

Services Characteristics

• May be individual useful, or can be integrated

• Communicate with clients by exchanging messages

• Can participate in a workflow

Page 11: Applications of SOA and Web Services in Grid Computing

11

Services Characteristics (cont.)

• May be completely self-contained, or may depend on other services, resources

• Advertise details such as their capabilities, interfaces, policies, and supported communications protocols

• How’s about implementation details? Programing language, hosting platform…

Page 12: Applications of SOA and Web Services in Grid Computing

12

Service interaction

Page 13: Applications of SOA and Web Services in Grid Computing

13

A Real Life Example

Page 14: Applications of SOA and Web Services in Grid Computing

14

Loose Coupling

• This term implies that the interacting software components minimize their in-built knowledge of each other

• They discover the information they need at the time they need it.

Page 15: Applications of SOA and Web Services in Grid Computing

15

State and Statelessness

• Client can choose to go to any service that is capable of fulfilling its need: loose coupling

• Loose coupling vs. tight coupling

• Ex: A calculator service

Page 16: Applications of SOA and Web Services in Grid Computing

16

Stateless vs. Stateful• Ex: a transaction that requires several steps

• The service retains some information (“state”) about each step

• This might result in a delay

Page 17: Applications of SOA and Web Services in Grid Computing

17

Stateless Service Design• Service must hand back state information to

client

• Client must hand the state information to whichever service it selects to process the next step

• The selected service must be able to accept and handle the state information

Page 18: Applications of SOA and Web Services in Grid Computing

18

A multi-step client/service interaction

Page 19: Applications of SOA and Web Services in Grid Computing

19

WEB SERVICES

Page 20: Applications of SOA and Web Services in Grid Computing

20

A Case Study

Page 21: Applications of SOA and Web Services in Grid Computing

21

Step 1: A customer chooses to pay with a Credit Card.

Page 22: Applications of SOA and Web Services in Grid Computing

22

Step 2: They enter shipping info on your site

Page 23: Applications of SOA and Web Services in Grid Computing

23

Step 3: They enter their credit card details

Page 24: Applications of SOA and Web Services in Grid Computing

24

Step 4: They review their payment info

Page 25: Applications of SOA and Web Services in Grid Computing

25

Step 5: Their payment is processed.

Page 26: Applications of SOA and Web Services in Grid Computing

26

Step 6: You get paid. (The fun part.)

Page 27: Applications of SOA and Web Services in Grid Computing

27

1

2 3

As easy as

Right?

Page 28: Applications of SOA and Web Services in Grid Computing

2828

What is Web Service?• Web Service Essential

Book: A web service is any

service that is available over the Internet, uses a standardized XML messaging system, and is not tied to any one operating system or programming language

XMLXML

Computer A:Language: Perl

OS: Windows 2000

Computer B:Language: Java

OS: Linux

A basic web service

Page 29: Applications of SOA and Web Services in Grid Computing

2929

What is Web Service? (cont.)• W3C:

– A software system designed to support interoperable machine-to-machine interaction over a network

• W3schools.com:– Application components– Communicate using open protocols– Self-contained and self-describing– Can be used by other applications

Page 30: Applications of SOA and Web Services in Grid Computing

30

Key specifications used by Web services

• XML: eXtensible Markup Language

• SOAP: Simple Object Access Protocol

• WSDL : Web Services Description Language

• UDDI: Universal Description Discovery and Integration

Page 31: Applications of SOA and Web Services in Grid Computing

31

Key specifications used by Web services

• XML: eXtensible Markup Language

• SOAP: Simple Object Access Protocol

• WSDL : Web Services Description Language

• UDDI: Universal Description Discovery and Integration

Page 32: Applications of SOA and Web Services in Grid Computing

3232

About…

• XML does not do anything• With XML, you invent your own tags• XML just plain text

<note> <to>Tove</to> <from>Jani</from> <heading>Reminder</heading> <body>Don't forget me this weekend!</body></note>

Page 33: Applications of SOA and Web Services in Grid Computing

33

SOAP• Protocol for messaging and remote

procedure calling between distributed applications

• SOAP is for exchange information between applications

• SOAP is a format for sending messages

Page 34: Applications of SOA and Web Services in Grid Computing

34

SOAP Message Structure

Page 35: Applications of SOA and Web Services in Grid Computing

3535

A SOAP request• POST /InStock HTTP/1.1Host: www.example.orgContent-Type: application/soap+xml;

<?xml version="1.0"?><soap:Envelope><soap:Body xmlns:m="http://www.example.org/stock">  <m:GetStockPrice>    <m:StockName>IBM</m:StockName>  </m:GetStockPrice></soap:Body></soap:Envelope>

Page 36: Applications of SOA and Web Services in Grid Computing

3636

The SOAP response• HTTP/1.1 200 OKContent-Type: application/soap+xml;

<?xml version="1.0"?><soap:Envelope><soap:Body xmlns:m="http://www.example.org/stock">  <m:GetStockPriceResponse>

    <m:Price>34.5</m:Price>  </m:GetStockPriceResponse></soap:Body></soap:Envelope>

Page 37: Applications of SOA and Web Services in Grid Computing

37

WSDL

• Used to define Web Services and describe how to access them

• Describes location of the service, the function calls

Page 39: Applications of SOA and Web Services in Grid Computing

39

SOA AND WEB SERVICES: STYLE VS. IMPLEMENTATION

Page 40: Applications of SOA and Web Services in Grid Computing

40

SOA Is Not Web Services

• Service-orientation is an architectural style

• Web services are an implementation technology

• The two can be used together, and they frequently are, but they are not mutually dependent.

Page 41: Applications of SOA and Web Services in Grid Computing

41

Demonstration

Page 42: Applications of SOA and Web Services in Grid Computing

OPEN GRID SERVICE ARCHITECTURE (OGSA)

Page 43: Applications of SOA and Web Services in Grid Computing

Abstract

• The Open Grid Services Architecture (OGSA), set to become the standard architecture for most grid applications, depends on Web Services as the underlying middleware.

• OGSA first spawned the Open Grid Services Infrastructure which, despite improving Web Services in several ways, failed to converge with existing Web Services standards.

• The Web Services Resource Framework (WSRF), introduced last January, improves on OGSI and will eventually replace it. The presentation will cover the evolution and current state of OGSA, OGSI, WSRF, and the next version of the Globus Toolkit (GT4), which will be the first implementation of the WSRF specification.

Page 44: Applications of SOA and Web Services in Grid Computing

44

Building an Open Grid

OpenStandards

OpenSource

OpenInfrastructure

OpenGrid

Page 45: Applications of SOA and Web Services in Grid Computing

45

Grids and Open StandardsIn

crea

sed

func

tiona

lity,

stan

dard

izatio

n

Time

Customsolutions

OGSA

GGF: OGSI, …(+ OASIS, W3C)

Multiple implementations,including Globus Toolkit

Web services

Globus Toolkit

Defacto standardsGGF: GridFTP, GSI

X.509,LDAP,FTP, …

App-specificServices

Page 46: Applications of SOA and Web Services in Grid Computing

46

OGSA Overview (1/2)

• OGSA = Open Grid Services Architecture Open: communicated extensibility, vendor neutrality. Services: OGSA is based on SOA manifested in WS Architecture: well-defined set of basic interfaces… Grid Services = Grid + WS; service semantics

• aims to standardize the different services that are commonly found in a Grid application Job management, security, VO management, data

management, workflow, deployment, etc.

Page 47: Applications of SOA and Web Services in Grid Computing

47

OGSA Overview (2/2)

• Addressing the challenges of integrating services across distributed, heterogeneous, dynamic VO formed from the disparate resources

• OGSA was introduced in “Physiology of the Grid” (I.Foster, C.Kesselman, J.Nick, y S.Tuecke)

• The actual standardization process is being carried out by the Global Grid Forum (GGF) http://www.ggf.org/

Page 48: Applications of SOA and Web Services in Grid Computing

48

OGSA Evolution

Autonomy ofthe Grid

Physiology ofthe Grid

OGSA V1.0

OGSA Glossary

OGSAProfile

Basic ExecutionService

Naming

JSDL

Open GridServices

Infrastructure

Web ServicesResource

Framework

Web ServicesNotification

informational

Normative

Page 49: Applications of SOA and Web Services in Grid Computing

49

What does OGSA define?

• “A set of core interfaces and behaviours that address key concerns in Grid systems.”– Each particular service can be accessed in the same fashion,

regardless of vendor, organization, internal implementation, etc.

• What underlies this?– How are the interfaces defined? – How does a client request a particular operation from a

service?

• OGSA relies on (&aims to improve) WS technologies– Broader context: Service-Oriented Architectures (SOA)– WS & GS

Page 50: Applications of SOA and Web Services in Grid Computing

50

Web Services (1)

• A simple but powerful distributed system paradigm, that allows one to:– Describe a service (WSDL)– Invoke a service (SOAP)– Discover a service (various)

• What sets it apart?– Clean separation between interface (what the service does)

and implementation (how it does it)– Based on standard interoperable languages (XML)– Widespread use and abundant software available

• We can use web services to build SOAs, improving interoperability and reusability.

Page 51: Applications of SOA and Web Services in Grid Computing

Web Services (2)

• Why are WS ideal for OGSA and for Grid systems?– Can easily cope with heterogeneous systems (different

programming languages, platforms, etc.)– Common interface language (WSDL) allows:

• Virtualization: from a pool of services (with the same interface) I can access any service in the same fashion regardless of vendor, platform, etc.

• Dynamic service indexing and discovery.• Dynamic access to services

51

Page 52: Applications of SOA and Web Services in Grid Computing

Grid Services (1)

• Despite being the best option for OGSA, WSs still have important disadvantages:– Stateless (…)– Non-transient ('Persistent')– No supporting services (notifications, lifecycle

management, etc.)

• OGSA defines the concept of a Grid Service to overcome these limitations:– Grid Service = improved Web Service– Grid Services are compatible with WS– Note that Grids need access to stateful resource

52

Page 53: Applications of SOA and Web Services in Grid Computing

Grid Services (2)• Grid services

– can maintain internal state for the lifetime of the service– can be created and destroyed dynamically (via a Factory)– have a globally unique name, the Grid service handle (GSH)– each instance has a set of service data elements (a

collection of XML elements)

• OGSA is based on Grid Services– Grid Services are specified in a separate spec spawned by OGSA: Open Grid Services Infrastructure (OGSI).– All the services in OGSA (Job management, security, etc.) will be based on (and implemented with) Grid Services

53

Page 54: Applications of SOA and Web Services in Grid Computing

Grid Services (3)

54

Page 55: Applications of SOA and Web Services in Grid Computing

55

OGSA Model: At a Glance

GT3 capabilities – e.g. GRMS, GridFTP, GRAM..

GT3 Security

Web services

OGSA – Grid Enabled Web Services

Other services – data services etc

Page 56: Applications of SOA and Web Services in Grid Computing

56

The OGSA Platform

OGSI

TransportProtocolHosting EnvironmentHosting Environment

Host. Env. & Protocol Bindings

OGSA Platform services: registry,authorization, monitoring, data

access, etc., etc.

More specialized &domain-specific

services

Models for resources &

other entitiesO

therm

odels

Environment-specificprofiles

Domain-specificprofiles

OGSAPlatform

Page 57: Applications of SOA and Web Services in Grid Computing

57

OGSI (1)

Web Service Interface (WSDL)

SOAPServer

Service Implementation

Web Services

A Grid ServiceGWSDL

Extends ..

Page 58: Applications of SOA and Web Services in Grid Computing

58

OGSI (2)

Implementation

Hosting environment/runtime(“C”, J2EE, .NET, …)

Dataaccess

Grid ServiceHandle

Grid ServiceReference

handleresolution

Servicedata

element

Servicedata

element

GridService(required)

Introspection:• What port types?• What policy?• What state?

Client

Servicedata

element

Other standard interfaces:factory,

notification,collections

Page 59: Applications of SOA and Web Services in Grid Computing

59

Page 60: Applications of SOA and Web Services in Grid Computing

60

Page 61: Applications of SOA and Web Services in Grid Computing

Globus Toolkit 3 (1)

• The Globus Toolkit is probably the best-known software package for Grid programming

• However, there seems to be an ongoing confusion regarding the relationship between GT3 and OGSA + OGSI...– GT3 == OGSA?– GT3 == OGSI?– Is GT3 a magical toolkit which will allow me to program

Grid systems out-of-the-box?

61

Page 62: Applications of SOA and Web Services in Grid Computing

Globus Toolkit 3 (2)

• The Globus Toolkit 3 (GT3) is a complete implementation, in Java, of the OGSI spec

• Very important: GT3 isn't only an OGSI implementation.– Includes OGSA-defined services– Includes its own non-OGSA services (which have become

a de facto standard)– Also includes non-WS components (GT2.4)

62

Page 63: Applications of SOA and Web Services in Grid Computing

GT3 Architecture

63

Non-GT3 services based on the GT3 architecture

Management of large volumes of data (Replica Management)

MMJFS, MDS, RFT

GSI (Grid Security Infrastructure), SSL, WS-Security, SOAP, ...

OGSI: Grid Services, Service Data, Notifications, Transient Services (Factory/Instance), Service Groups

Page 64: Applications of SOA and Web Services in Grid Computing

OGSA, OGSI, and GT3(1)

64

Page 65: Applications of SOA and Web Services in Grid Computing

OGSA, OGSI, and GT3 (2)

65

In standardization process (GGF)- VO management- Security- Job management- Data management- Workflow- etc.

Standardized (GGF) and implemented (GT3)

Standardized (W3C) and implemented (Apache Axis)

Page 66: Applications of SOA and Web Services in Grid Computing

OGSA: summing up

• OGSA: standards-based Grid technology– From Web services: standard IDL, discovery, binding

independence, other desirable features– From Grid: naming, state, lifetime management, etc., etc.

66

Page 67: Applications of SOA and Web Services in Grid Computing

WEB SERVICES RESOURCE FRAMEWORK (WSRF)

Page 68: Applications of SOA and Web Services in Grid Computing

68

Grid and WS: Convergence?

• Despite being generally accepted as a good change within the Grid community, OGSI has not caught the eye of the Web Service community.– GGF had hoped that Web Services standards and OGSI

would converge, but that convergence is not happening.

Started far apart in apps & tech

OGSI

GT2GT1

HTTPWSDL,

WS-*

WSDL 2,

WSDM

Have beenconverging ?

Page 69: Applications of SOA and Web Services in Grid Computing

OGSA Review

69

Web Services Messaging, Security, Etc.

Open Grid Services Infrastructure

Domain-Specific Services

Core Services

ProgramExecution Data Services

Sta

ndar

diza

tion

Page 70: Applications of SOA and Web Services in Grid Computing

70

Three Major WS Concerns about OGSI

• “Dense specification”• “Does not work well with existing WS tooling”

– Extended WSDL & therefore not compatible with other Web service standards ..

– Grid services need to be stateful and dynamic– Therefore, WSDL had to be extended (how) to add state &

notification• Too “object oriented”

– Web Services are not supposed to be object-oriented, despite the fact that most Web Services are implemented using object-oriented languages. This specially refers to the fact that OGSI Services are stateful (Web Services are supposed to be stateless)

– Grid services extended Web services – means that Grid services are ON THEIR OWN…

Page 71: Applications of SOA and Web Services in Grid Computing

WSRF (1)

• To achieve Web Service & Grid Service convergence, a new standard was announced during GlobusWORLD 2004 (January 2004)

• This new standard will supersede OGSI• WSRF – Web Services Resource Framework• OASIS, from 2006

71

Page 72: Applications of SOA and Web Services in Grid Computing

WSRF (2)

72

• The definition of WSRF means that Grid and Web communities can move forward on a common base

Page 73: Applications of SOA and Web Services in Grid Computing

WSRF (3)

73

•OGSA Services can be defined and implemented asWeb services instead of working w/ a diff “improved version” of WS

•OSGA can take advantage of other Web services standards

•OGSA can be implemented using standard Web services development tools

•Grid applications will NOT require special Web services infrastructure

• WSRF would be part of the WS standard, instead of being a “patch” over existing one (like OGSI)

Page 74: Applications of SOA and Web Services in Grid Computing

WSRF (4)

74

Web Services Messaging, Security, Etc.

Open Grid Services Infrastructure

Domain-Specific Services

Core Services

ProgramExecution Data Services

Stan

dard

izatio

n

WS-Resource Framework

Page 75: Applications of SOA and Web Services in Grid Computing

WSRF (5)• WS-Resource: Web Service + stateful resource

– Put state in the resource, not WS, each has a unique key– instruct the WS to use a particular resource, if we want a stateful

interaction with a WS– Pairing a WS with a resource is called a WS-Resource

• WS-Resource is a construct used to model stateful resources using WS architectural framework

• Unique (for the Web Service) - Has a distinguishable identity and lifetime

• Stateful - Maintains a specific state that can be materialized using XML

• May be accessed through one or more Web Services

75

Page 76: Applications of SOA and Web Services in Grid Computing

Example of stateful Web services

76

Page 77: Applications of SOA and Web Services in Grid Computing

Example of stateful Web services

77

Note: There are three resources, and the service interface is instructed to use Resource C

Page 78: Applications of SOA and Web Services in Grid Computing

78

Page 79: Applications of SOA and Web Services in Grid Computing

79

Page 80: Applications of SOA and Web Services in Grid Computing

WSRF specification• WSRF is a collection of four different specifications

related to the management of WS-Resource1. WS-ResourceProperties – Supplies a set of interfaces

that will allow us to access, modify, and query resource properties

2. WS-ResourceLifetime: Resources have non-trivial life cycles. In other words, they are not static entity that is created when our server stops. Resources can be created and destroyed at anytime. The WS-ResourceLifetime supplies some basic mechanisms to manage lifecycle of resources.

80

Page 81: Applications of SOA and Web Services in Grid Computing

WSRF specification (2)

• WSRF is a collection of four different specifications related to the management of WS-Resource3. WS-ServiceGroup – This is useful in managing groups of

WS or group of WS-Resources and performing operations such as “add new service to group”, “remove this service from group”, and (more importantly), “find a service in the group that meets the condition FOOBAR”, very basic but is the base of more powerful discovery services (such as GT4’s Index Service)

4. WS-BaseFaults – Aims to provide a standard way of representing faults when something goes wrong during WS service invocation

81

Page 82: Applications of SOA and Web Services in Grid Computing

Related Specifications

1. WS-Notification – This is another collection of specification that, although not part of a WSRF, is closely related to it.

2. WS-Addressing: Provides mechanism for addressing WS. More versatile than URI. Can be used to address WS-Resource pair

82

Page 83: Applications of SOA and Web Services in Grid Computing

83

Concerns Addressed

How WSRF deals with OGSI's problems:* “Dense specification” WSRF is divided in five documents plus a complementary

specification (WS-Notification) * “Doesn’t work well w/ existing WS tooling” WSRF harmonizes with WS: less aggressive use of XML

Schema, use of pure WSDL 1.1 for interface description (instead of GWSDL, a 'patched' version of WSDL fit for OGSI)

* “Too object oriented” WSRF makes an explicit distinction between the “service”

and the stateful “resources” acted upon by that service

Page 84: Applications of SOA and Web Services in Grid Computing

Relation from WSRF to ...

84

• OGSA: WSRF mechanisms will enable OGSA• OGSI: WSRF restates OGSI concepts in WS terms

OGSI WSRF

Grid Service Reference (GSR) WS-Addressing Endpoint Reference

Grid Service Handle (GSH) WS-Addressing Endpoint Reference

HandleResolver portType WS-RenewableReferences

Service data elements (SDE) WS-ResourceProperties

GridService lifetime managementt

WS-ResourceLifeCycle

Notification portTypes WS-Notification

Factory portType Treated as a pattern

ServiceGroup portTypes WS-ServiceGroup

Base fault type WS-BaseFaults

Page 85: Applications of SOA and Web Services in Grid Computing

WSRF and GT4

85

Page 86: Applications of SOA and Web Services in Grid Computing

WSRF – summing up• Why is WSRF important?

– WSRF completes Grid/Web convergence

• How does WSRF relate to OGSI?– WSRF restates OGSI concepts in WS terms

• How does WSRF relate to OGSA?– WSRF mechanisms will enable OGSA

• Why is WSRF more likely to succeed? – Harmonizes with Web Services– Backed by IBM and HP

• First, full, free implementation: GT4– IBM will include support for WSRF in some of its tools.

• More WSRF details: – http://www.globus.org/wsrf

86

Page 87: Applications of SOA and Web Services in Grid Computing

Summary

• “Grid Computing” is undergoing an intense standardization process.– OGSA: Still work-in-progress (some parts finished)– OGSI: Promising start, but didn't quite make it– WSRF: Will it achieve true Grid/Web convergence?

• Until OGSA is truly stable, the Globus Toolkit remains the de facto standard, and one of the most important pieces of software in Grid system development.

87

Page 88: Applications of SOA and Web Services in Grid Computing

88

Resources[1] The Physiology of the Grid, Ian Foster, Carl Kesselman, Jeffrey M. Nick, Steven Tuecke, 2002[2] Towards a service-oriented Grid, Borja Sotomayor, University of Deusto, 2004[3] SOA, Web Service In Grid Computing, Phạm Hùng Tiến, Đặng Hoài Đức, K2008[4] Open Grid Services Architecture, Ian Foster, University of Chicago, 2003[5] WS-Resource Framework: Globus Alliance Perspectives, Ian Foster, University of Chicago, 2003[6] OGSA, WSRF, and the Foundations of Grid, David Snelling, Fujitsu Laboratories of Europe, 2005[7] Global Globus Forum http://www.globus.org[8] IBM: http://www.ibm.com/developerworks/library/ws-resource/

Page 89: Applications of SOA and Web Services in Grid Computing

89

Q & A

Phạm Hồng [email protected]

Lê H.N. Quỳ[email protected]

Page 90: Applications of SOA and Web Services in Grid Computing

90

THANK YOU!

Page 91: Applications of SOA and Web Services in Grid Computing

91

APPENDIX

Page 92: Applications of SOA and Web Services in Grid Computing

WSRF 101: Stateful Resource• A Resource:

– A specific set of state data expressible as an XML document• This is not typically all of the resource’s state!

– Has a well-defined identity and lifecycle – Known to, and acted upon, by one or more Web services.

• Many Possible Instances– Files, Database tables, EJB Entities, XML documents, Compositions of

multiple data sources, Virtualized executions of applications, etc.• A WS-Resource has:

– Identity: Can be uniquely identified/referenced– Lifetime: Often created & destroyed by clients– State: Part of the state can be projected as XML– Type: Its Web service interface

92

Page 93: Applications of SOA and Web Services in Grid Computing

Lifetime• Defines:

– Immediate, synchronous destruction operation– Time-based, scheduled destruction operation– “Soft-state” or “leased” lifetime management– Termination time not required to increase monotonically

• Resource properties:– CurrentTime: Can be used to determine clock skew– TerminationTime: Current scheduled termination time

• Notification of resource termination• Why:

– Define clear means by which resources can be destroyed– Allow the Grid to “Garbage Collect” itself automatically

93

Page 94: Applications of SOA and Web Services in Grid Computing

Notification

• WS-Notification– Brings publish and subscribe messaging to Web services– Loosely coupled, asynchronous messaging in WSs– WS Notification composes with WSRF and other WSs

• Brokered notification– Support for intermediates, queuing, aggregation, distribution,

filtering, ...

• Topics and Topic Spaces– Define a mechanism to advertise topics for subscription.

• Use of WS-Notification in WS-RF– Receive notification changes to the Resource Properties

94

Page 95: Applications of SOA and Web Services in Grid Computing

WSDL: Web Services Description Language

Define expected messages for a service, and their (input or output parameters)

An interface groups together a number of messages (operations)

Bind an Interface via a definition to a specific transport (e.g. HTTP) and messaging (e.g. SOAP) protocol

The network location where the service is implemented , e.g. http://localhost:8080

Page 96: Applications of SOA and Web Services in Grid Computing

Web Services Server Applications• Web service – software that exposes a

set of operations• SOAP Engine – handle SOAP requests

and responses (Apache Axis)• Application Server – provides “living

space” for applications that must be accessed by different clients (Tomcat)

• HTTP server- also called a Web server, handles http messages

Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s02.html

Container

Page 97: Applications of SOA and Web Services in Grid Computing

Let’s talk about state

• Plain Web services are stateless

Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s03.html

Page 98: Applications of SOA and Web Services in Grid Computing

However, Many GridApplications Require State

Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s03.html

Page 99: Applications of SOA and Web Services in Grid Computing

Keep the Web Serviceand the State Separate

• Instead of putting state in a Web service, we keep it in a resource

• Each resource has a unique key

Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s03.html

Page 100: Applications of SOA and Web Services in Grid Computing

Web Service+

Resource=

WS-Resource

Address of a WS-resource is called an end-point reference

Resources Can Be Anything Stored

Page 101: Applications of SOA and Web Services in Grid Computing

“Stateless” vs. “Stateful” Services

• Without state, how does client:– Determine what happened (success/failure)?– Find out how many files completed?– Receive updates when interesting events arise?– Terminate a request?

• Few useful services are truly “stateless”, but WS interfaces alone do not provide built-in support for state

Client

FileTransferService

move (A to B)move

Page 102: Applications of SOA and Web Services in Grid Computing

GT3/GT4 Evolution

102

Page 103: Applications of SOA and Web Services in Grid Computing

Although Grid services are implemented using WS technology, the following are the differences btw them

Grid services vs. Web Services

Web service• Addresses the issue of discovery and invocation of persistent services

•A WS is often presumed available if its corresponding WSDL file is accessible to its client

•WS typically outlive all their clients

Grid service• Addresses the issue of a virtual resource and its state management

•A grid is a dynamic environment hence, Grid services can be transient rather than persistent

•A Grid service can be dynamically created and destroyed.

Page 104: Applications of SOA and Web Services in Grid Computing

104

OGSA Specs LandscapeSYSTEMSMANAGEMENT

UTILITYCOMPUTING

GRIDCOMPUTING

Core Services

Basic Profile WS-Addressing

Privacy

WSRF-RAP

WSDM

WS-Security

Naming

OGSA-EMSOGSA Self Mgmt

Others ...

GGF-UR Data Model

HTTP(S)/SOAP

Discovery

SAML/XACML

WSDL WSRF-RL

Trust

WS-DAI

VO Management

Information

Distributed query processing

ASP

Data CentreUse Cases &Applications Collaboration Multi MediaPersistent Archive

WSRF-RP

X.509

NotificationService Groups WS-I BP