Post on 14-Jan-2016
description
transcript
Grid services vs. Web services
Dana Petcu, Georgiana Macariu,Marc Francu, Alexandru Carstea
IeAT, Romania
Content
Grid ws. Web services Similarities What is different?
Overview of the SCIEnce activities at Timisoara
Similarities
Special forms of distributed computing Both typically deal with wide-area distributed
computing A Grid service is basically a Web service with
some additions E.g. to make it able to store state information
persistently rather than transiently at the server beyond the lifetime of a single request
Differences
Grid services have different goals from pure Web services: WS: conceived to share information, (eg:
http://www.webservicesx.net/globalweather.asmx GS: conceived to share computing power and
resources like disk storage databases and software applications (eg: EGEE)
“Grid service = Grid computing + Web services” Every Grid service “is a” Web services, but
not every Web service “is a” Grid service
Web service
A software system built to support communication between two processing elements that are interconnected through a network
The most important requirement: interoperability Interaction client-service provider is carried out using XML based
messages Messages are exchanged using an underlying protocol such as
HTTP or SMTP. A web service offers an interface described by a document that
can be processed by a machine in automatic fashion Use SOAP standard or REST standard
REST standard imposes that a request must specify all the information needed by the server to service the request (no stateful information should be kept at server level)
For SOAP standard the interface is defined using WSDL
WS stack (W3C Web Services Architecture
Document)
Grid services extends Web services by: stateful services, service instantiation, named service instances and a two-level
naming scheme, a base set of service capabilities, including
discovery facilities, lifetime management
Statefulness
An instance of a service is stateless if it cannot remember prior events.
An instance of service is stateful if it can remember about prior actions (-> vars. within service to maintain vals between accesses)
A WS is usually stateless, A GS is stateful A WS can be stateful using ad hoc methods Grid services are bringing uniformity and
consistency in this topic
Statefulness
State in the Web service is generally regarded as a bad thing!
Stateless Web services storing state information? By separating the Web service from the state information!
State keep it in a separate entity called resource Each resource has a unique key Statefull interaction with a Web service: instruct the
Web service to use a particular resource.
Web Service + Resource = WS-Resource
Web services - stateless vs. stateful : bank service analogy(from www.neresc.ac.uk/events/presentations-talks/WebGridServices.pdf)
Instantiation
WS: no different discrete units of state (instances) named in a consistent manner
GS: namable state GS specification defines:
Factories and Lifetime management services
A factory implements an operation that creates a new service instance and returns its handle and its initial termination time.
Instantiation
Named service instances
WS: named by URIs GS:
named at a first level by a Grid Service Handle (GSH) - an URI, an abstract name that refers only an instance (no information like the location, implementation, or status of the service)
A GSH is resolved at a second level into a Grid Service Reference (GSR)
From: www.cs.indiana.edu/~ysimmhan/l/talks/simmhan-b534-
2004.pdf
Get all Entries about services.Returns Metadata Content and the GSH (http://extreme/services/foo/my-service)
SDE:<entry><locator><handle>http://extreme/services/foo/my-service</handle></locator><content><foo>myContent</foo></content></entry>
GSH = http://extreme/services/service-registryGSR (URL) = http://rainier:20202/service-registry
Service Group Registry
My Grid Service
GSH = http://extreme/services/foo/my-serviceGSR (URL) = http://ooty:8080/foo-service
Handle Resolver
GSH = http://extreme/services/handle-resolverGSR (URL) = http://rainier:10101/handle-resolver
Select your service and get GSR for GSHhttp://extreme/services/foo/my-service. Returns http://ooty:8080/foo-service. Client
3 2
Handle Resolver URL = http://rainier:10101/handle-resolverYour Service Handle = http://extreme/services/foo/my-service OR locate from Registry GSH = http://extreme/services/service-registry
4Invoke method on service
Get GSR for registry GSHhttp://extreme/services/service-registry.Returns http://rainier:20202/handle-resolver
1
Service discovery
WS: UDDI registry, allow introspection and discovery of static information such as service interfaces and associated policy
GS: need support for transient service instances that are created or destroyed dynamically!
GT4 uses an own index service which locate service based
upon user criteria service discovery is based on Service Data Elements
(SDEs) = a structured collection of information associated with a Grid service that allows a user to choose a service that satisfies its needs, e.g. functionality speed, cost.
Lifecycle
related to the issues of resource reclamation associated with services in the event of failures (eg. loss of network connectivity) or lack of interest by any relevant clients (eg. service no
longer ref. by any active process) WS: cycle controlled by the Web Server
dynamically allocated when a request arrives deallocated when that request/session ends
GS: set a time (in SDE) when a service will self-destruct unless
kept alive by subsequent increases in its termination time service instance need not to be explicitly destroyed
Transient vs. non-transient service A transient service instance is one that can be created and
destroyed (eg. for specific clients) An non-transient (persistent) instance of a service outlives its
client WS: usually non-transient GS: can be
stateful transient: an instance assigned to each client and only that client can access
stored information; information retained between accesses and pertains to the client; instance usually destroyed when its purpose has been fulfilled
stateful non-transient: several clients share one instance of the service, Stored information is available to all clients.
Current standards
GT4 and WSRF.NET currently implements Web Services Resource Framework (WSRF) that specifies stateful WS that extends WSs
WSRF: a collection of specifications WS-ResourceProperties WS-ResourceLifetime WS-ServiceGroup WS-BaseFaults [WS-Notification] [WS-Addressing]
References
M.C. Brown, Build grid applications based on SOA. Concepts behind SOA and how to move grid applications to SOA model, DeveloperWorks -- IBM's resource for developers, 2005, www-128.ibm.com/developerworks/grid/library/gr-soa/
A. Grimshaw, Grid services extend Web services, SOAWebServices Journal 506, 2003, webservices.sys-con.com/read/39829.htm.
D.Petcu, Between Web and Grid-based Mathematical Service, Procs. ICCGI, IEEE Computer Society Press, 2006, science.ieat.ro/science/research/publications/
K. Champion, Stateless and stateful WS in the Grid community, 2004, searchwebservices.techtarget.com/expert/KnowledgebaseAnswer/
P. Shread, Web Services a Good Start For Grid, But Not Enough, Grid Computing Planet, 2003, www.gridcomputingplanet.com/news/article.php/3281_1571191
B. Sotomayor, Globus Toolkit 4 Programmer's Tutorial, gdp.globus.org/gt4-tutorial H. Stockinger, Grid Computing: A Critical Discussion on Business Applicability, IEEE
Distributed Systs Online,vol.7,no.6,2006, dsonline.computer.org/portal/site/dsonline WSRF, http://docs.oasis-open.org/wsrf/
SCIEnce activities at Timisoara
http://science.ieat.ro
JRA1
Access to Grid and Web services Service discovery Facilitate the creation on Grid symbolic
services …
Activities
A tool for accessing services from a CAS
Novelty: Automatic creation of Grid/Web clients Generic for any CAS
Overviews papers: Identify state of the art
Research: propose some improvements for CAS related to Grids
API
In the next talk… Now only some test interface
API Exercise: http://194.102.62.36/portal
Exercise portal: Web services
Select Web service
Select method
Get arguments
Get results
Accessing a Grid service
Exercise portal-selecting a Grid service
Exercise portal-selecting a method
Exercise portal-specify the arguments
Exercise portal: getting the result
Papers (http://science.ieat.ro/science/research/publications/) D. Petcu, D. Tepeneu, M.Paprzycki, T.Ida, Symbolic Computations on
Grids, chapter 6 in "Engineering the Grid: status and perspective", eds. Beniamino di Martino, Jack Dongarra, Adolfy Hoisie, Laurence Yang, and Hans Zima, American Scientific Publishers, 2006, pp. 91-107
D. Petcu, Improving Computer Algebra Systems by Using Grid Services, in 1st Austrian Grid Symposium, J. Volkert, T. Fahringer, D. Kranzlmuller, W. Schreiner (eds.), Austrian Computer Society, Band 210, 2006, 102-110
D.Petcu, C.Bonchis, C.Izbasa, Symbolic Computations based on Grid Services, Int. Journal of Computers, Communications and Control (RO), Vol. 1, no. 1, 2006, 44-50
D.Petcu, Between Web and Grid-based Mathematical Services, ICCGI, 1-3 August 2006, IEEE Computer Society Press, eds. P. Dini, C. Popoviciu, C. Dini, Gunter Van de Velde, E. Borcoci
D.Petcu, Mathematics on the net: state of the art and challenges, 8th French-Romanian Colloquim on Applied Mathematics, Chambery, France, August 28-31, 2006, invited talk