Modeling Stateful Resources with Web Services
By Ian Foster et al
1. Issue is whether WS should be stateful or stateless. Vogels view
is that it should be stateless;
Foster folks think it should be stateful.
2. WS-Resource may reconcile these two positions
3. Background : http, html, xml, soap, WS, WSRF, GS
WS --> SOAP, WSDL, UDDI
SOAP : message encoding
WSDL : service definition
UDDI: for service definition and discovery
SOA: approach to building loosely coupled distributed systems
with minmal shared understanding among
systems?
-- sevices coordinate by sending messages
-- a service performs a well defined operation
-- user need to be aware of only the interface
not the implementation of the service
Each of these items is clearly understood but the challenge
is in defining WS
4. Consider the example: getReservation, addSegment, removeSegment
It is desirable to prepresent relationship between
WS and state explicitly and in a standard manner;
Such representation enhances service interoperability,
simplifies definition of new service interfaces,
enables more powerful discovery and management.
(lets discuss this further)
5. WS Environments:
WS software components: software component; provides
operations; manipulatable state held in other
resources in the system; deployable component;
requires runtime environment such as JBoss, Websphere, JRun;
runtime env provides services for dispatching
message and Qos features such as security and transactions.
WSDL defines WS capabilities in terms messages for
interaction and possible fault messages.
An "endpoint" provides the message receiving and processing
facility: bound to a network address and port;
Translates envelops to host lang elements: XML to Java
objects; dispatches messages to target service;
WS is uniquely identified by address that combines
endpoint and other WS specific info.
6. Taxonomy of state and services:
stateless service; conversational service (cookies and HTTP
sessions); service that acts upon stateful resources (transactional)
7. WS-Resource Definition: page 10
8. Modeling State: reprsentation XML, lifecycle; one or more WS may use
them;
9. Groups of resources;
10. stateful resource factory
11. Lets discuss relationship between state and lang. /platform specific
concept such as EJB.
1/24:
1. Implied resource : you don't have to pass the state info as a parameter
2. Implied resource pattern: follow certain standards "patterns"
3. A WS-Addressing endpoint reference is an XMLserialization
of a network-wide pointer to a web service.
This pointer is returned when a resource creation is
requested by a web service and a factory creates the resource
or when a WS sends a query for registry of resources
or some application specific WS request
4. This endpoint reference may contain in addition to endpoint address of
the WS, other metadata associated with
the WS.
---service description info
--- reference properties
help define contextual use of the endpoint
5. WS + staeful resource ==> WS-Resource look at Figure 2
WS
request sent to WS
resource C is created (explicit WS-Resource factory)
endpoint reference is returned
endpoint reference contains information about WS + newly created
resource (implied resource pattern relationship)
-- wsa: Address component
-- wsa: ReferenceProperties component
An endpoint conatining a staeful resource identifier is a WS-Resource
qualified endpoint reference.
6. See Figure 3. See the resource id C specifed.
7. Cardinality of the relationship between WS and stateful resources: can
be potentially large; for example if the
stateful resource is a file
8. WS-Resource lifecycle: creation, set identity, destruction
WS-Resource properties: similar to grid services SDEs
9. ACID properties
10. Secuirty.