Download presentation
Presentation is loading. Please wait.
Published byAlaina West Modified over 9 years ago
1
1 Web Service Architecture Working Draft @@ @@@ 2002 學生 : 鄭偉豪 指導老師 : 葉慶隆 教授 報告日期 :2003/03/20 Editors: Michael Champion, Software AG Chris Ferris, IBM Eric Newcomer, Iona David Orchard, BEA Systems http://www.w3.org/TR/wd-ws-arch
2
2 Introduction Web services provide a standard means of communication among different software applications,running on a variety of platforms and/or frameworks The Web services reference architecture 1. identifies the functional components, 2. defines the relationships among those components, 3. and establishes a set of constraints upon each to effect the desired properties of the overall architecture.
3
3 The Need for an Architecture The generalized term "Web services" does not currently describe a coherent or necessarily consistent set of technologies, architectures, or even visions. What we think of as "Web services", including: 1. "Distributed Objects" or "Application Integration" 2. EDI / B2B 3. The World Wide Web itself The Web has proven enormously popular, scalable, and interoperable, but it too presents many challenges -- reliability, security, database-level transactions
4
4 2 What is a Web service? Web service is a software system identified by a URI, whose public interfaces and bindings are defined and described using XML Its definition can be discovered by other software systems. These systems may then interact with the Web service in a manner prescribed by its definition, using XML based messages conveyed by internet protocols
5
5 3 Architecture Overview 3.1 Basic Architecture 3.2 Extended Web Services Architecture
6
6 3.1 Basic Architecture(Cont) The basic architecture includes Web services technologies capable of: 1. Exchanging messages 2. Describing Web services 3. Publishing and discovering Web service descriptions The basic Web service architecture models the interactions between agents performing any of three roles
7
7 3.1 Basic Architecture(Cont) Requesters and providers interact using one or more message exchange patterns (MEPs) that define the sequence of one or more messages exchanged between them.(data type,structure information,identifies the MEP)
8
8 3.1 Basic Architecture(Cont) Software agents in the basic architecture can take on one or all of the following roles: 1. Service requester 2. Service provider 3. Discovery agency
9
9 3.1 Basic Architecture(Cont) Service Oriented Architecture The figure above illustrates the basic Web services architecture
10
10 3.1 Basic Architecture(Cont) A message is defined as a construct that can include zero or more headers, an envelope, data within the envelope and data external to the envelope. The header part of a message can include information pertinent to extended Web services functionality,such as security, transaction context, orchestration information, or message routing information. The data part of a message contains the message content or data.
11
11 3.1 Basic Architecture Service Oriented Architecture The figure above illustrates the relationships between requesters, providers, services, descriptions, and discovery services in the case where agents take on both requester and provider roles
12
12 3.1.1 Components The Service: A web service is a software module deployed on network accessible platform provided by service provider The Service Description: The service description contains the details of the interface and implementation of the service. This includes its data types, operations, binding information, and network location
13
13 3.1.2 Roles Service Provider: From a business perspective, this is the owner of the service. Service Requestor: From a business perspective, this is the business that requires certain function to be satisfied Discovery Agency: This is a searchable set of service descriptions. 1. A discovery agency can support both the pattern where it has descriptions sent to it and where the agency actively inspects public providers for descriptions
14
14 3.1.3 Operations In order for an application to take advantage of Web services, three behaviors must take place 1. Publish 2. Find 3. Interact
15
15 3.2 Extended Web Services Architecture The extended Web services architecture incorporates additional features and functionality by extending the technologies and components defined within the basic Web services architecture.
16
16 3.2.1 Features Features are..... A Feature is specified in the abstract, and is realized through one or more bindings, Message Exchange Patterns, or Modules.. Here is a partial list of Features 1. Message exchange pattern(MEP) 2. Caching 3. Message integrity 4. Message routing 5. Asynchronous messaging 6.....
17
17 3.2.1.1 Packaging For some applications, a purely XML-based representation of the payload is awkward or inefficient The most common packaging tactic in such cases is to introduce a multipart representation which carries the SOAP envelope and its related data
18
18 3.2.1.2 Transactions The fundamental characteristic of a transaction is the ability to join multiple actions into the same unit of work The transactional unit of work is responsible for ensuring that any state changes performed by participating Web services are either made permanent or undone. Two major cases of context management need to be addressed: 1. Where communication sessions (or conversations) are available to maintain shared state 2. Where communication sessions (or conversations) are not available to maintain shared state
19
19 3.2.1.3 Publish/Subscribe There are a number of mechanisms that can be used to support the distribution of messages 1. a publisher may only support one subscriber, in which case simple one-way or sync request/response may be used 2. When multiple publishers and subscribers are allowed, message distribution may occur at the protocol level 3. though an intermediary distribution service (e.g. a web service) that takes on the responsibility of distributing the messages to interested parties
20
20 3.2.1.4 Choreography(Cont) Choreographies define how multiple web services are used together, specifying the linkages and usage patterns involved. A choreography definition describes the sequence and conditions which control how the interactions occur.
21
21 3.2.1.4 Choreography Example uses of choreography definitions include: 1. Service Composition 2. Workflow 3. Linking businesses through Web Services A standard choreography definition language provides significant benefits 1. Complements WSDL 2. Standardized choreographies
22
22 3.2.1.5 Semantics Semantics in web services provide formal documentation of meaning. 1.Rights and obligations of parties 2.Who is doing what to whom 3.Effect of invoking services Preconditions,consequences, Expected effects of actions 4.Notable events 5.Definition of terms references to external ontologies local definitions specific to the agreement
23
23 3.2.3 Diagrammatic representation of features
24
24 3.2.4 Flows Service Oriented Architecture Derivate Patterns Peer to Peer
25
25 3.2.4 Flows Service Oriented Architecture Derivate Patterns Direct interaction
26
26 3.2.4 Flows Service Oriented Architecture Derivate Patterns intermediary
27
27 3.2.4 Flows NEW Service Oriented Architecture Derivate Patterns one way message
28
28 4 Web Services Stacks To ensure interoperability when performing the publish, find and bind operations expressed in the Service Oriented Architecture (SOA) diagram; conceptual and technical standards must be defined for each role and type of interaction This section will explore each of roles and interactions in order identify each relevant stack of technologies
29
29 4.1 Wire "Stack" The wire stack encapsulates the concepts and technologies dealing with the actual physical exchange of information between any of the roles in the SOA diagram. This includes the variety network transport, message packaging and message extensions that may be utilized to facilitate data exchange
30
30 Wire
31
31 4.1.1 Transport Web services that are publicly available on the Internet use commonly deployed network protocols. Because of its ubiquity, HTTP is the de facto standard network protocol for Internet-available web services. Other Internet protocols may be supported including SMTP and FTP.
32
32 4.1.2 Packaging Packaging, represents the technologies that may be used to package information being exchanged SOAP consists of four fundamental components 1. an envelop 2. a set of encoding rules 3. a convention for representing remote procedure calls (RPC) and responses 4. a set of rules for using SOAP with HTTP
33
33 4.1.2 Packaging SOAP is currently the de facto standard for XML messaging for a number of reasons. 1. SOAP is relatively simple, defining a thin layer that builds on top of existing network technologies such as HTTP 2. SOAP is flexible and extensible 3. SOAP is based on XML. 4. SOAP enjoys broad industry and developer community support
34
34 4.1.3 Extensions Extensions provides a framework that allows additional information to be attached to Web service messages representing a variety of additional concerns; such as context, routing, policy, etc.
35
35 4.2 XML Messaging with SOAP(cont)
36
36 4.2 XML Messaging with SOAP Application integration with SOAP can be achieved by using four basic steps 1. A service requestor’s application creates a SOAP message. 2. The SOAP runtime is responsible for converting the XML Message into programming language specific objects 3. The web service is responsible for processing the request message and formulating a response 4. The response message is received by the networking infrastructure on the service requestor’s node
37
37 4.2.1 Interactions 1. One way: Message sent from requestor to provider. Provider may or may not return a response 2. Conversational: Requester and Provider exchange multiple messages.Can be defined by choreography language 3. Many-to-Many: Requester sends message to many providers. Or, service provider responds to many requestors. Can be defined by choreography language
38
38 4.3 Description "Stack“
39
39 4.3.1 Descriptions Applying to a Particular Web Service
40
40 4.3.1.1 Interface A service interface definition is an abstract or reusable service definition that may be instantiated and referenced by multiple service implementation definitions. Service interfaces may be defined by industry standards organizations, such as RosettaNet or HL7 for the health industry. The service interface contains elements that comprise the reusable portion of the service description:binding, portType, message and type elements
41
41 4.3.1.2 Implementation The service implementation definition describes how a particular service interface is implemented by a given service provider. also describes its location so that a requester can interact with it.
42
42 4.3.1.3 Policy Policy for Web services consists of facts, or assertions, and rules that apply to a particular Web service. The policy description layer is where the additional description necessary to specify the business context, qualities of service, security requirements and offerings, and management requirements.
43
43 4.3.1.4 Presentation This description could be used to render the service on a variety of devices including phones, PDAs, and systems.
44
44 4.4 Discovery Agencies "Stack"
45
45 4.4 Discovery Agencies "Stack" A web service cannot be discovered if it has not been published, service discovery depends upon service publication.
46
46 4.4.1 Service Publication A service description can be published using a variety of mechanisms. These various mechanisms provide different capabilities depending on how dynamic the application using the service is intended to be.
47
47 4.4.1.2 Publishing Service Descriptions Internal Enterprise Application UDDI registry Portal UDDI registry Partner Catalog UDDI registry e-Marketplace UDDI Business Registry UDDI registry
48
48 4.4.2 Service Discovery -- Acquiring Service Descriptions Service requestors can retrieve a service description at design time or runtime from a Web page (URL), a service description repository, a simple service registry or a UDDI registry.
49
49 4.5 Overarching Concerns
50
50 4.5 Realization in Web Services Architecture
51
51 4.6 The Complete Web Services "Stack"
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.