410 likes | 490 Views
WS-Resource Framework. University of Amsterdam adam@science.uva.nl. GT1. GT2. OGSI. Started far apart in apps & tech. Have been converging. ?. WSDL 2, WSDM. WSDL, WS-*. HTTP. Grid and Web Services: Convergence?. Grid. Web.
E N D
WS-Resource Framework University of Amsterdam adam@science.uva.nl
GT1 GT2 OGSI Started far apart in apps & tech Have been converging ? WSDL 2, WSDM WSDL, WS-* HTTP Grid and Web Services: Convergence? Grid Web However, despite enthusiasm for OGSI, adoption within Web community turned out to be problematic “WS-Resource Framework: Globus Alliance Perspectives” I. Foster
GT1 GT2 OGSI Started far apart in apps & tech Have been converging WSRF WSDL 2, WSDM WSDL, WS-* HTTP Grid and Web Services:Convergence: Yes! Grid Web The definition of WSRF means that Grid and Web communities can move forward on a common base “WS-Resource Framework: Globus Alliance Perspectives” I. Foster
Modeling Stateful Resources with Web Services Web Service and State • Web service interfaces provide a user with the ability to access and manipulate state • Message exchanges that Web services implement are frequently intended to enable access to stateful resources. • However, the notion of stateful resources acted upon by the Web service implementation is not explicit in the interface definition.
Possible association between State and Services • A stateless service implements • message exchanges with no access or use of information not contained in the input message • A conversational service implements • a series of operations such that the result of one operation depends on a prior operation and/or prepares for a subsequent operation • A service that acts upon stateful resources • access to, or manipulates a set of logical stateful resources based on messages it sends and receives.
Stateless Implementations, Stateful Interfaces • A Service that acts upon stateful resources may be described “stateless” • if it delegates responsibility for the management of the state to anothercomponent. • The service is responsible for the state of the resource between message exchanges
A consequence of statelessness • Any dynamicstate needed for a given message-exchange execution must be: • provided explicitlywithin the request message, • whether directly by-value or indirectly by-reference • maintained implicitlywithin other system components with which the WS can interact.
WS-Resource Properties WS-Resource Lifetime WS-Notification Modeling Stateful Resources with Web Services WS-Base Faults WS-Service Group WS-RenewableReferences Web Service and State • It is desirable to define Web service conventions to enable: • the discovery of, introspection on, and interaction with stateful resources in standard and interoperable ways. • WS-Resource is approach to modeling state in a Web services context
context Web Service and State • A WS-Resource is defined as the composition of a Web service and a S-Resource • Expressed as an association of an XML document with defined type with a Web services portType • Addressed and accessed according to the conventional use of WS-Addressing endpoint references Run-time environment Interface Web Service resource S-Resource identifier is encapsulated in an endpoint reference to identify the S-Resource to be used in the execution of a Web service message exchange. Dr. Daniel Sabbah “Bringing Grid & Web Services Together”, IBM Software Group
WS-Addressing Invoking a Web Service Endpoint Reference Run-time environment message Interface Web Service message address Dr. Daniel Sabbah “Bringing Grid & Web Services Together”, IBM Software Group
WSRF & WS-Addressing • WS-Addressing standardizes • The endpoint reference used to represent the address of a WS. • endpoint contain metadata associated with the WS • service description information • reference properties
WS-Resource and WS-Addressing • SW (2) represents an explicit WS-Resource factory • SW (2) returns an Endpoint reference to the requestor. • “C” is S-resource created • The endpoint reference (3) contains • Wsa:Address (4) • refers to the network transport-specific address of the WS (URL). • same address that would appear within a port element in a WSDL of the WS • wsa:ReferencePropertie • contain an XML serialization of a S-Resource identifier.
WS-Resource Encapsulation • Encapsulation guarantees that encapsulated data can only be accessed through well defined operations. • Control point, data policy enforcement (integrity, constancy) • Data encapsulation facilitates the use of data without theuser having to understand the details of the data implementation • The implied resource pattern facilitates varying degrees of WS encapsulation of S-Resources.
WS-Resource and WS-Addressing • S-Resource identifier • Is meaningful only to the SW: • Used by WS in an implementation specific to identify the WS-Resource related S-Resource needed for the execution. • Should not be examined or interpreted by the service requestor’s applications
WS-Resource and WS-Addressing • S-Resource identifier • Must identify a unique S-Resource to be used in the execution of the request message. • The scope of the S-Resource identifier must be unique within the scope of the WS. • Multiple identifiers within the scope of a WS may refer to the same WS-Resource.
WS-Resource-qualified endpoint reference • the endpoint reference represents a pointer to the WS-Resource • service requestor • must understand that the endpoint reference refers to a WS-Resource. • must recognize that the endpoint reference is a WS-Resource qualified endpoint reference.
WS-Resource Relationship Cardinality • A WS can execute message exchanges against: • zero • more S-Resources defined as instances of the resource property document. • A single WS at a particular endpoint is associated with several individual S-Resources
WS-Resource Relationship Cardinality (At the type level) • WSDL 1.1 portType, defining the interface to a WS: • can be associated with at most one S-Resource property document. • S-Resource property document can be associated with many portTypes. • Any WS that implements a portType is by definition a WS associated with a S-Resource
WS-Resource Properties WS-Resource Lifetime WS-Notification Modeling Stateful Resources with Web Services Web Services WS-Service Group WS-Base Faults WS-RenewableReferences OGSA Enabled OGSA Enabled OGSA Enabled Network Storage Servers OGSA Enabled OGSA Enabled OGSA Enabled OGSA Enabled OGSA Enabled OGSA Enabled Security File Systems Directory Messaging Workflow Database How WSRF is related to OGSA? WS-Resource Framework is an evolution of OGSI • OGSA Services can be defined and implemented asWeb services • 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 Applications OGSA Architected Services Web Services OGSI – Open Grid Services Infrastructure Dr. Daniel Sabbah “Bringing Grid & Web Services Together”, IBM Software Group
WS-Resource Framework • WS-Resource framework allows WS-Resources to be • declared, created, accessed, monitored, destroyed via conventional Web services mechanisms • but • does not require that the WScomponent of the WS-Resource to be implemented as a stateful message processor.
id address WS-Resource framework model Creating / Locating a WS-Resource Endpoint Reference Run-time environment Endpoint Reference resource message Interface Web Service message address Web Service either locates or creates a WS-Resource Dr. Daniel Sabbah “Bringing Grid & Web Services Together”, IBM Software Group
context WS-Resource Framework Using a Web service to access a WS-Resource Endpoint Reference Run-time environment id resource message Interface Web Service message address id Dr. Daniel Sabbah “Bringing Grid & Web Services Together”, IBM Software Group
context WS-Resource Framework Using a Web service to access a WS-Resource Endpoint Reference Endpoint Reference Run-time environment id resource message Interface Web Service message address id resource Dr. Daniel Sabbah “Bringing Grid & Web Services Together”, IBM Software Group
How WSRF relates to other Web services standards? Service Composition BPEL4WS WS-Notification WS-Service Group Quality of Experience (QoX) WS-Reliable Messaging WS-Transaction WS-Security WS-Resource Lifetime Description WS-Base Faults WS-Resource Properties WSDL XSD WS-Policy WS-Metadata Exchange Messaging SOAP XML WS-Addressing WS-Renewable References Transports JMS RMI / IIOP SMTP HTTP/HTTPS Dr. Daniel Sabbah “Bringing Grid & Web Services Together”, IBM Software Group
context WS-ResourceLifetime • Three main focus: • Creation of WS-Resource • WS-Resource Factory • Assign identity to the WS-Resource • WS-Resource destruction Run-time environment Interface Web Service resource ID Endpoint Reference
WS-Resource Creation • WS-Resource factory is any WS capable of creating a WS-Resource • creating a new S-Resource • assigning the new S-Resource an identity, • associating the new S-Resource and its WS. • The response message of a WS-Resource factory operation contains • WS-Resource-qualified endpoint reference containing a S-Resource identifier that refers to the new S-Resource
WS-Resource Destruction • A requestor that wishes to terminate a WS-Resource uses WS-Resource-qualified endpoint reference to: • Immediate Destruction: send a destroy request message to the WS using the endpoint reference. • Scheduled Destruction: message exchanges for establishing and renewing scheduled destruction times on WS-Resources
WS-Resource Properties • WS-Resource Properties • Resource state and metadata “Projected” as an XML document • GetResourceProperty operations allows client to query the state of the WS-Resource • SetResourceProperty operation allows client to modify the state of the WS-Resource – supports Insert, Delete and Update. resource <ProcessorProperties> <ProcID>5A34C1DE03</ProcID> <ProcArchitecture>Power6.2</ProcArchitecture> <ProcSpeedMIPS>400</ProcSpeed> <ProcCacheMB>256<ProcCache> <ProcRunning>1</ProcRunning> </ProcessorProperties>
WS-Resource Properties • Requestorsdetermine a WS-Resource’s type by retrieving the WSDL portType definition. • Requestors use Resource propertyto refer to • individual component of a WS-Resource’s state • XML document describing the type of a S-Resource within the WS-Resource (WS-Resource properties document) Requestors use WS message exchanges to read, modify, and query the XML document representing the WS-Resource’s state.
WS-Resource Properties Document • WS-Resource properties document declaration is associated with the WSDL portType using a standard attribute, resourceProperties
WS-Resource Properties Document • the state of “C” comprises 3 components, p1, p2, and p3 • resource properties document, “ExampleResourceProperties,”.
WS-Resource Properties • WS-Resource properties documentacts as a view on, the actual state of the WS-Resource. • The document defines the structure upon which requestor-initiates queries and updates can be directed. • Any operation that manipulates a resource property via the WS-Resource properties documentmust be reflected in the actual implementation of the WS-Resource’s state.
Renewable References • WS-RenewableReferences defines mechanisms: • that can be used to renew an endpoint reference that has become invalid. • WS-RenewableReferences provides for EPRs: • a persistent and stablereference to the WS-Resource that can allow the same state to be accessedrepeatedly over time.
Renewable References • A WS-Addressing endpoint reference may contain • not only addressing • policy information concerning interactions with the service. • endpoint references are constructed by an authoritative source of the addressing and policy information. • An endpoint reference made available to a client represents a copy of that information • When it becomes incoherent due to changes introduced by the authoritative source that effects the endpoint location and/or the policy
Service Groups • The WS-ServiceGroup specification defines a means of representing and managing heterogeneous by-reference collections of Web services. • organize collections of WS-Resources, for example to build registries • build services that can perform collectiveoperations on a collection of WS-Resources.
The ServiceGroup specification express ServiceGroup: membership rules, Membership constraints classifications. Groups can be defined. as a collection of members that meet the constraints of the group as expressed through resource properties Add Destroy Client Service Groups WS-ServiceGroup WS-ServiceGroup ServiceGroupEntry WS-Resource ServiceGroupEntry WS-Resource ServiceGroupEntry WS-Resource
WS-Resource Property Composition • Web services allow to construct a new interface from several existing interfaces via a process of composition • Aggregation of WS-Resource properties of the various constituent portTypes is also possible. • WS-Resource properties document composition is obtained by adding additionalXML element declarations, using: • xs:ref attribute
Base Faults • The WS-BaseFaults specification defines a basefaulttype for use when returning faults in a Web services message exchange. • Used by all of the other WS-Resource framework specifications to bringconsistency to the faultsreturned by the operations including • consistent reporting of faults relating to WS-Resource definition and use.
Subscriber Broker WS-Notification • WS-Notification, defines a general, topic based WS system for (pub/sub) interactions that builds on the WS-Resource framework. • From the perspective of WS-Notification • WS-Resource framework provides usefulbuilding blocks for representing and structuring notifications. • From the perspective of the WSRF, • WS-Notification specifications extends WS-Resources by allowing requestors to ask to be asynchronously notified of changes to resourcepropertyvalue subscribe notify notify notify subscribe S S S Publisher notify
Evaluate how much did you get from this course • Possible association between State and Services? (Slide 5) • Stateless Implementations, Stateful Interfaces? (Slide 6) • what is WS-Resource? What is of composition WS-Resource (slides 8, 9) • what is EPR? What is the composition of the EPR? (Slide 13) • what is the role of the encapsulation? (Slide 13) • what is the difference between EPR and Q-EPR? (Slides 16, 17) • WS-Resource Relationship Cardinality? Zero to many association between WS and S-Resource why do we need such a relationship? (slides 18, 19) • WS-Resource Framework? (Slide 21) • How many ways exist for the WS-Resource Destruction? Why do we need more than (Slide 31) • why do we need the Renewable References specifications? (Slides 37, 38)