Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Applications of SOA and Web Services in Grid Computing

4,386 views

Published on

Published in: Education
  • Be the first to comment

Applications of SOA and Web Services in Grid Computing

  1. 1. Applications of SOA and Web Services in Grid Computing<br />Thanh H. Pham – Quynh Le<br />19 May 2010<br />
  2. 2. 31.900.000<br />2<br />
  3. 3. Today’s Overview <br />3<br />
  4. 4. Objectives<br />SOA – An overview<br />WS & Related Technologies<br />OSGA & WSRF Overview<br />Applications of<br />SOA and WS<br />in Grid Computing<br />4<br />
  5. 5. Service-oriented Architecture<br />5<br />
  6. 6. A Case Study<br />Image from Dr. Dang Tran Khanh slide<br />6<br />
  7. 7. Key terms[1]<br />An architecture:<br />Formal description of a system<br />Defines system purpose, functions<br />Defines system externally visible properties, and interfaces.<br />[1] OGSA Glossary of Terms v1.0: http://www.gridforum.org/documents/GFD.44.pdf <br />7<br />
  8. 8. Key terms (cont.)<br />A service<br />Is a software component <br />Can be accessed via a network<br />Provides functionality to a requester<br />8<br />
  9. 9. Key terms (cont.)<br />Service-oriented architecture refers to a style of building reliable distributed systems that deliver functionality as loose coupling services<br />Technically, then, the term SOA refers to the design of a system, not to its implementation<br />9<br />
  10. 10. Services Characteristics<br />May be individual useful, or can be integrated<br />Communicate with clients by exchanging messages<br />Can participate in a workflow<br />10<br />
  11. 11. Services Characteristics (cont.)<br />May be completely self-contained, or may depend on other services, resources<br />Advertise details such as their capabilities, interfaces, policies, and supported communications protocols<br />How’s about implementation details? Programing language, hosting platform…<br />11<br />
  12. 12. Service interaction<br />12<br />
  13. 13. A Real Life Example<br />13<br />
  14. 14. Loose Coupling<br /><ul><li>This term implies that the interacting software components minimizetheir in-built knowledge of each other
  15. 15. They discover the information they need at the time they need it.</li></ul>14<br />
  16. 16. State and Statelessness<br /><ul><li>Client can choose to go to any service that is capable of fulfilling its need: loose coupling
  17. 17. Loose coupling vs. tight coupling
  18. 18. Ex: A calculator service</li></ul>15<br />
  19. 19. Stateless vs. Stateful<br />Ex: a transaction that requires several steps<br />The service retains some information (“state”) about each step<br />This might result in a delay<br />16<br />
  20. 20. Stateless Service Design<br />Service must hand back state information to client<br />Client must hand the state information to whichever service it selects to process the next step<br />The selected service must be able to accept and handle the state information<br />17<br />
  21. 21. A multi-step client/service interaction<br />18<br />
  22. 22. Web Services<br />19<br />
  23. 23. A Case Study<br />20<br />
  24. 24. Step 1: A customer chooses to pay with a Credit Card. <br />21<br />
  25. 25. Step 2: They enter shipping info on your site<br />22<br />
  26. 26. Step 3: They enter their credit card details<br />23<br />
  27. 27. Step 4: They review their payment info<br />24<br />
  28. 28. Step 5: Their payment is processed. <br />25<br />
  29. 29. Step 6: You get paid. (The fun part.)<br />26<br />
  30. 30. As easy as<br />3<br /> 1<br />2<br />Right?<br />27<br />
  31. 31. 28<br />What is Web Service?<br />Computer A:<br />Language: Perl<br />OS: Windows 2000<br />XML<br />XML<br />Computer B:<br />Language: Java<br />OS: Linux<br />A basic web service<br />Web Service Essential Book:<br /> 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<br />28<br />
  32. 32. 29<br />W3C:<br />A software system designed to support interoperable machine-to-machine interaction over a network <br />W3schools.com:<br />Application components<br />Communicate using open protocols<br />Self-contained and self-describing<br />Can be used by other applications<br />29<br />What is Web Service? (cont.)<br />
  33. 33. Key specifications used by Web services<br />XML: eXtensibleMarkup Language<br />SOAP: Simple Object Access Protocol <br />WSDL : Web Services Description Language<br />UDDI: Universal Description Discovery and Integration<br />30<br />
  34. 34. Key specifications used by Web services<br />XML: eXtensibleMarkup Language<br />SOAP: Simple Object Access Protocol <br />WSDL : Web Services Description Language<br />UDDI: Universal Description Discovery and Integration<br />31<br />
  35. 35. 32<br />XML does not do anything<br />With XML, you invent your own tags<br />XML just plain text<br /><note> <to>Tove</to> <from>Jani</from><heading>Reminder</heading> <body>Don't forget me this weekend!</body></note><br />32<br />About…<br />
  36. 36. SOAP<br />Protocol for messaging and remote procedure calling between distributed applications<br />SOAP is for exchange information between applications<br />SOAP is a format for sending messages<br />33<br />
  37. 37. SOAP Message Structure<br />34<br />
  38. 38. 35<br />A SOAP request<br />POST /InStock HTTP/1.1Host: www.example.orgContent-Type: application/soap+xml; <br /> <?xml version="1.0"?><soap:Envelope><soap:Bodyxmlns:m="http://www.example.org/stock">  <m:GetStockPrice>    <m:StockName>IBM</m:StockName>  </m:GetStockPrice></soap:Body></soap:Envelope><br />35<br />
  39. 39. 36<br />The SOAP response<br />HTTP/1.1 200 OKContent-Type: application/soap+xml; <br /> <?xml version="1.0"?><soap:Envelope><soap:Bodyxmlns:m="http://www.example.org/stock">  <m:GetStockPriceResponse>    <m:Price>34.5</m:Price>  </m:GetStockPriceResponse></soap:Body></soap:Envelope> <br />36<br />
  40. 40. WSDL<br />Used to define Web Services and describe how to access them<br />Describes location of the service, the function calls<br />37<br />
  41. 41. UDDI<br />38<br />
  42. 42. SOA and Web Services: Style vs. Implementation<br />39<br />
  43. 43. SOA Is Not Web Services<br />Service-orientation is an architectural style<br />Web services are an implementation technology <br />The two can be used together, and they frequently are, but they are not mutually dependent.<br />40<br />
  44. 44. Demonstration<br />41<br />
  45. 45. Open Grid Service Architecture (OGSA)<br />
  46. 46. Abstract<br />The Open Grid Services Architecture (OGSA), set to become the standard architecture for most grid applications, depends on Web Services as the underlying middleware. <br />OGSA first spawned the Open Grid Services Infrastructure which, despite improving Web Services in several ways, failed to converge with existing Web Services standards. <br />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.<br />
  47. 47. 44<br />Open<br />Standards<br />Open<br />Grid<br />Open<br />Source<br />Open<br />Infrastructure<br />Building an Open Grid<br />
  48. 48. 45<br />Grids and Open Standards<br />OGSA<br />Web services<br />GGF: OGSI, …<br />(+ OASIS, W3C)<br />Multiple implementations,<br />including Globus Toolkit<br />X.509,<br />LDAP,<br />FTP, …<br />Globus Toolkit<br />Defacto standards<br />GGF: GridFTP, GSI<br />App-specific<br />Services<br />Increased functionality,<br />standardization<br />Custom<br />solutions<br />Time<br />
  49. 49. 46<br />OGSA Overview (1/2)<br />OGSA = Open Grid Services Architecture<br /><ul><li>Open: communicated extensibility, vendor neutrality.
  50. 50. Services: OGSA is based on SOA manifested in WS
  51. 51. Architecture: well-defined set of basic interfaces…
  52. 52. Grid Services = Grid + WS; service semantics</li></ul>aims to standardize the different services that are commonly found in a Grid application<br /><ul><li>Job management, security, VO management, data management, workflow, deployment, etc.</li></li></ul><li>47<br />OGSA Overview (2/2)<br />Addressing the challenges of integrating services across distributed, heterogeneous, dynamic VO formed from the disparate resources<br />OGSA was introduced in “Physiology of the Grid” (I.Foster, C.Kesselman, J.Nick, y S.Tuecke)<br />The actual standardization process is being carried out by the Global Grid Forum (GGF) http://www.ggf.org/<br />
  53. 53. 48<br />OGSA Evolution<br />informational<br />Autonomy of<br />the Grid<br />OGSA V1.0<br />OGSA<br />Profile<br />Normative<br />OGSA Glossary<br />Basic Execution<br />Service<br />Naming<br />JSDL<br />Physiology of<br />the Grid<br />Open Grid<br />Services<br />Infrastructure<br />Web Services<br />Resource<br />Framework<br />Web Services<br />Notification<br />
  54. 54. 49<br />What does OGSA define?<br />“A set of core interfaces and behaviours that address key concerns in Grid systems.”<br />Each particular service can be accessed in the same fashion, regardless of vendor, organization, internal implementation, etc.<br />What underlies this?<br />How are the interfaces defined? <br />How does a client request a particular operation from a service?<br />OGSA relies on (&aims to improve) WS technologies<br />Broader context: Service-Oriented Architectures (SOA)<br />WS & GS<br />
  55. 55. 50<br />Web Services (1)<br />A simple but powerful distributed system paradigm, that allows one to:<br />Describe a service (WSDL)<br />Invoke a service (SOAP)<br />Discover a service (various)<br />What sets it apart?<br />Clean separation between interface (what the service does) and implementation (how it does it)<br />Based on standard interoperable languages (XML)<br />Widespread use and abundant software available<br />We can use web services to build SOAs, improving interoperability and reusability.<br />
  56. 56. Web Services (2)<br />Why are WS ideal for OGSA and for Grid systems?<br />Can easily cope with heterogeneous systems (different programming languages, platforms, etc.)<br />Common interface language (WSDL) allows:<br />Virtualization: from a pool of services (with the same interface) I can access any service in the same fashion regardless of vendor, platform, etc.<br />Dynamic service indexing and discovery.<br />Dynamic access to services<br />51<br />
  57. 57. Grid Services (1)<br />Despite being the best option for OGSA, WSs still have important disadvantages:<br />Stateless (…)<br />Non-transient ('Persistent')<br />No supporting services (notifications, lifecycle management, etc.)<br />OGSA defines the concept of a Grid Service to overcome these limitations:<br />Grid Service = improved Web Service<br />Grid Services are compatible with WS<br />Note that Grids need access to stateful resource<br />52<br />
  58. 58. Grid Services (2)<br />Grid services<br />can maintain internal state for the lifetime of the service<br />can be created and destroyed dynamically (via a Factory)<br />have a globally unique name, the Grid service handle (GSH)<br />each instance has a set of service data elements (a collection of XML elements)<br />OGSA is based on Grid Services<br />Grid Services are specified in a separate spec spawned <br />by OGSA: Open Grid Services Infrastructure (OGSI).<br />All the services in OGSA (Job management, security, <br />etc.) will be based on (and implemented with) Grid Services<br />53<br />
  59. 59. Grid Services (3)<br />54<br />
  60. 60. 55<br />OGSA Model: At a Glance<br />Other services – data services etc<br />OGSA – Grid Enabled Web Services<br />Web services<br />GT3 Security <br />GT3 capabilities – e.g. GRMS, GridFTP, GRAM.. <br />
  61. 61. 56<br />The OGSA Platform<br />More specialized &<br />domain-specific<br />services<br />Domain-<br />specific<br />profiles<br />Other<br />models<br />OGSA<br />Platform<br />OGSA Platform services: registry,<br />authorization, monitoring, data<br />access, etc., etc. <br />Models for resources<br /> & other entities<br />OGSI<br />Environment-<br />specific<br />profiles<br />Host. Env. & Protocol Bindings<br />Transport<br />Hosting Environment<br />Protocol<br />Hosting Environment<br />
  62. 62. 57<br />OGSI (1)<br />A Grid Service<br />GWSDL<br />Extends ..<br />Web <br />Services <br />Web Service <br />Interface (WSDL)<br />SOAP<br />Server<br />Service Implementation<br />
  63. 63. 58<br />OGSI (2)<br />Client<br />Introspection:<br /><ul><li> What port types?
  64. 64. What policy?
  65. 65. What state?</li></ul>Data<br />access<br />GridService<br />(required)<br />Other standard interfaces:<br />factory,<br />notification,<br />collections<br />Grid Service<br />Handle<br />Service<br />data<br />element<br />Service<br />data<br />element<br />Service<br />data<br />element<br />handle<br />resolution<br />Grid Service<br />Reference<br />Implementation<br />Hosting environment/runtime<br />(“C”, J2EE, .NET, …)<br />
  66. 66. 59<br />
  67. 67. 60<br />
  68. 68. Globus Toolkit 3 (1)<br />The Globus Toolkit is probably the best-known software package for Grid programming<br />However, there seems to be an ongoing confusion regarding the relationship between GT3 and OGSA + OGSI...<br />GT3 == OGSA?<br />GT3 == OGSI?<br />Is GT3 a magical toolkit which will allow me to program Grid systems out-of-the-box?<br />61<br />
  69. 69. Globus Toolkit 3 (2)<br />The Globus Toolkit 3 (GT3) is a complete implementation, in Java, of the OGSI spec<br />Very important: GT3 isn't only an OGSI implementation.<br />Includes OGSA-defined services<br />Includes its own non-OGSA services (which have become a de facto standard)<br />Also includes non-WS components (GT2.4)<br />62<br />
  70. 70. GT3 Architecture<br />63<br />Non-GT3 services based on the GT3 architecture<br />Management of large volumes of data (Replica Management)<br />MMJFS, MDS, RFT<br />GSI (Grid Security Infrastructure), SSL, WS-Security, SOAP, ...<br />OGSI: Grid Services, Service Data, <br />Notifications, Transient Services <br />(Factory/Instance), Service Groups<br />
  71. 71. OGSA, OGSI, and GT3(1)<br />64<br />
  72. 72. OGSA, OGSI, and GT3 (2)<br />65<br />In standardization process (GGF)<br /><ul><li>VO management
  73. 73. Security
  74. 74. Job management
  75. 75. Data management
  76. 76. Workflow
  77. 77. etc.</li></ul>Standardized (GGF) and implemented (GT3)<br />Standardized (W3C) <br />and implemented (Apache Axis)<br />
  78. 78. OGSA: summing up<br />OGSA: standards-based Grid technology<br />From Web services: standard IDL, discovery, binding independence, other desirable features<br />From Grid: naming, state, lifetime management, etc., etc.<br />66<br />
  79. 79. Web Services Resource Framework (WSRF)<br />
  80. 80. 68<br />Grid and WS: Convergence?<br />GT1<br />GT2<br />OGSI<br />Started far apart in apps & tech<br />Have been<br />converging <br />?<br />WSDL 2,<br /> WSDM<br />WSDL, <br /> WS-*<br />HTTP<br /><ul><li>Despite being generally accepted as a good change within the Grid community, OGSI has not caught the eye of the Web Service community.
  81. 81. GGF had hoped that Web Services standards and OGSI would converge, but that convergence is not happening.</li></li></ul><li>OGSA Review<br />69<br />Standardization<br />Domain-SpecificServices<br />Program<br />Execution<br />Data Services<br />Core Services<br />Open Grid Services Infrastructure<br />Web Services Messaging, Security, Etc.<br />
  82. 82. 70<br />Three Major WS Concerns about OGSI<br />“Dense specification”<br />“Does not work well with existing WS tooling”<br />Extended WSDL & therefore not compatible with other Web service standards ..<br />Grid services need to be stateful and dynamic<br />Therefore, WSDL had to be extended (how) to add state & notification<br />Too “object oriented”<br />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)<br />Grid services extended Web services – means that Grid services are ON THEIR OWN…<br />
  83. 83. WSRF (1)<br />To achieve Web Service & Grid Service convergence, a new standard was announced during GlobusWORLD 2004 (January 2004)<br />This new standard will supersede OGSI<br />WSRF – Web Services Resource Framework<br />OASIS, from 2006<br />71<br />
  84. 84. WSRF (2)<br />72<br />The definition of WSRF means that Grid and Web communities can move forward on a common base<br />
  85. 85. WSRF (3)<br />73<br /><ul><li>OGSA Services can be defined and implemented asWeb services instead of working w/ a diff “improved version” of WS
  86. 86. OSGA can take advantage of other Web services standards
  87. 87. OGSA can be implemented using standard Web services development tools
  88. 88. Grid applications will NOT require special Web services infrastructure
  89. 89. WSRF would be part of the WS standard, instead of being a “patch” </li></ul> over existing one (like OGSI)<br />
  90. 90. WSRF (4)<br />74<br />Standardization<br />Domain-Specific Services<br />Program<br />Execution<br />Data Services<br />Core Services<br />Open Grid Services Infrastructure<br />WS-Resource Framework<br />Web Services Messaging, Security, Etc.<br />
  91. 91. WSRF (5)<br />WS-Resource: Web Service + stateful resource<br />Put state in the resource, not WS, each has a unique key<br />instruct the WS to use a particular resource, if we want a stateful interaction with a WS<br />Pairing a WS with a resource is called a WS-Resource<br />WS-Resource is a construct used to model stateful resources using WS architectural framework<br />Unique (for the Web Service) - Has a distinguishable identity and lifetime<br />Stateful - Maintains a specific state that can be materialized using XML<br />May be accessed through one or more Web Services<br />75<br />
  92. 92. Example of statefulWeb services<br />76<br />
  93. 93. Example of stateful Web services<br />77<br />Note:There are three resources, and the service interface is instructed to use Resource C<br />
  94. 94. 78<br />
  95. 95. 79<br />
  96. 96. WSRF specification<br />WSRF is a collection of four different specifications related to the management of WS-Resource<br />WS-ResourceProperties– Supplies a set of interfaces that will allow us to access, modify, and query resource properties<br />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.<br />80<br />
  97. 97. WSRF specification (2)<br />WSRF is a collection of four different specifications related to the management of WS-Resource<br />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)<br />WS-BaseFaults– Aims to provide a standard way of representing faults when something goes wrong during WS service invocation<br />81<br />
  98. 98. Related Specifications<br />WS-Notification – This is another collection of specification that, although not part of a WSRF, is closely related to it.<br />WS-Addressing: Provides mechanism for addressing WS. More versatile than URI. Can be used to address WS-Resource pair<br />82<br />
  99. 99. 83<br />Concerns Addressed<br />How WSRF deals with OGSI's problems:<br />* “Dense specification”<br />WSRF is divided in five documents plus a complementary specification (WS-Notification)<br /> * “Doesn’t work well w/ existing WS tooling”<br />  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)<br /> * “Too object oriented”<br />WSRF makes an explicit distinction between the “service” and the stateful “resources” acted upon by that service<br />
  100. 100. Relation from WSRF to ...<br />84<br />OGSA: WSRF mechanisms will enable OGSA<br />OGSI: WSRF restates OGSI concepts in WS terms <br />
  101. 101. WSRF and GT4<br />85<br />
  102. 102. WSRF – summing up<br />Why is WSRF important?<br />WSRF completes Grid/Web convergence<br />How does WSRF relate to OGSI?<br />WSRF restates OGSI concepts in WS terms <br />How does WSRF relate to OGSA?<br />WSRF mechanisms will enable OGSA<br />Why is WSRF more likely to succeed? <br />Harmonizes with Web Services<br />Backed by IBM and HP<br />First, full, free implementation: GT4<br />IBM will include support for WSRF in some of its tools.<br />More WSRF details: <br />http://www.globus.org/wsrf<br />86<br />
  103. 103. Summary <br />“Grid Computing” is undergoing an intense standardization process.<br />OGSA: Still work-in-progress (some parts finished)<br />OGSI: Promising start, but didn't quite make it<br />WSRF: Will it achieve true Grid/Web convergence? <br />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. <br />87<br />
  104. 104. 88<br />Resources<br />[1] The Physiology of the Grid, Ian Foster, Carl Kesselman, Jeffrey M. Nick, Steven Tuecke, 2002<br />[2] Towards a service-oriented Grid, Borja Sotomayor, University of Deusto, 2004<br />[3] SOA, Web Service In Grid Computing, PhạmHùngTiến, ĐặngHoàiĐức, K2008<br />[4] Open Grid Services Architecture, Ian Foster, University of Chicago, 2003<br />[5] WS-Resource Framework: Globus Alliance Perspectives, Ian Foster, University of Chicago, 2003<br />[6] OGSA, WSRF, and the Foundations of Grid, David Snelling, Fujitsu Laboratories of Europe, 2005<br />[7] Global Globus Forum http://www.globus.org<br />[8]IBM: http://www.ibm.com/developerworks/library/ws-resource/<br />
  105. 105. Q & A<br />Lê H.N. Quỳnh<br />lhnquynh@gmail.com<br />PhạmHồngThanh<br />thanhphh@gmail.com<br />89<br />
  106. 106. Thank You!<br />90<br />
  107. 107. 91<br />Appendix<br />
  108. 108. WSRF 101: Stateful Resource<br />A Resource:<br />A specific set of state data expressible as an XML document<br />This is not typically all of the resource’s state!<br />Has a well-defined identity and lifecycle <br />Known to, and acted upon, by one or more Web services.<br />Many Possible Instances<br />Files, Database tables, EJB Entities, XML documents, Compositions of multiple data sources, Virtualized executions of applications, etc.<br />A WS-Resource has:<br />Identity: Can be uniquely identified/referenced<br />Lifetime: Often created & destroyed by clients<br />State: Part of the state can be projected as XML<br />Type: Its Web service interface<br />92<br />
  109. 109. Lifetime<br />Defines:<br />Immediate, synchronous destruction operation<br />Time-based, scheduled destruction operation<br />“Soft-state” or “leased” lifetime management<br />Termination time not required to increase monotonically <br />Resource properties:<br />CurrentTime: Can be used to determine clock skew<br />TerminationTime: Current scheduled termination time<br />Notification of resource termination<br />Why:<br />Define clear means by which resources can be destroyed<br />Allow the Grid to “Garbage Collect” itself automatically<br />93<br />
  110. 110. Notification<br />WS-Notification<br />Brings publish and subscribe messaging to Web services<br />Loosely coupled, asynchronous messaging in WSs<br />WS Notification composes with WSRF and other WSs<br />Brokered notification<br />Support for intermediates, queuing, aggregation, distribution, filtering, ...<br />Topics and Topic Spaces<br />Define a mechanism to advertise topics for subscription.<br />Use of WS-Notification in WS-RF<br />Receive notification changes to the Resource Properties<br />94<br />
  111. 111. WSDL: Web Services Description Language<br />Bind an Interface via a definition to a specific transport (e.g. HTTP) and messaging (e.g. SOAP) protocol<br />The network location where the service is implemented , e.g. http://localhost:8080<br />Define expected messages for a service, and their (input or output parameters)<br />An interface groups together a number of messages (operations)<br />
  112. 112. Web Services Server Applications<br />Container<br />Web service – software that exposes a set of operations<br />SOAP Engine – handle SOAP requests and responses (Apache Axis)<br />Application Server – provides “living space” for applications that must be accessed by different clients (Tomcat)<br />HTTP server- also called a Web server, handles http messages<br /> Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s02.html<br />
  113. 113. Let’s talk about state<br />Plain Web services are stateless<br /> Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s03.html<br />
  114. 114. However, Many GridApplications Require State<br /> Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s03.html<br />
  115. 115. Keep the Web Serviceand the State Separate<br />Instead of putting state in a Web service, we keep it in a resource <br />Each resource has a unique key<br /> Borja Sotomayor , http://gdp.globus.org/gt4-tutorial/multiplehtml/ch01s03.html<br />
  116. 116. Web Service<br />+ <br />Resource<br />=<br />WS-Resource<br />Address of a WS-resource is called an end-point reference <br />Resources Can Be Anything Stored<br />
  117. 117. “Stateless” vs. “Stateful” Services<br />Without state, how does client:<br />Determine what happened (success/failure)?<br />Find out how many files completed?<br />Receive updates when interesting events arise?<br />Terminate a request?<br />Few useful services are truly “stateless”, but WS interfaces alone do not provide built-in support for state<br />FileTransferService<br />Client<br />move (A to B)<br />move<br />
  118. 118. GT3/GT4 Evolution<br />102<br />
  119. 119. Grid services vs. Web Services<br /><ul><li>Although Grid services are implemented using WS technology, the following are the differences btw them</li></ul>Web service<br /><ul><li>Addresses the issue of discovery and invocation of persistent services
  120. 120. A WS is often presumed available if its corresponding WSDL file is accessible to its client
  121. 121. WS typically outlive all their clients</li></ul>Grid service<br /><ul><li>Addresses the issue of a virtual resource and its state management
  122. 122. A grid is a dynamic environment hence, Grid services can be transient rather than persistent
  123. 123. A Grid service can be dynamically created and destroyed.</li></li></ul><li>104<br />SYSTEMS<br />MANAGEMENT<br />UTILITY<br />COMPUTING<br />GRID<br />COMPUTING<br />Use Cases &<br />Applications<br />Distributed query processing<br />Data Centre<br />ASP<br />Collaboration<br />Multi Media<br />Persistent Archive<br />VO Management<br />OGSA-EMS<br />OGSA Self Mgmt<br />WS-DAI<br />WSDM<br />Discovery<br />Information<br />Naming<br />GGF-UR<br />Data Model<br />Core Services<br />Privacy<br />Others ...<br />Trust<br />Notification<br />Service Groups<br />WS-I BP<br />WSRF-RAP<br />WS-Security<br />SAML/XACML<br />X.509<br />Basic Profile<br />WS-Addressing<br />HTTP(S)/SOAP<br />WSDL<br />WSRF-RL<br />WSRF-RP<br />OGSA Specs Landscape<br />

×