web services presented by : noam ben haim. agenda introduction what is a web service basic...
TRANSCRIPT
![Page 1: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/1.jpg)
Web Services
Presented By : Noam Ben Haim
![Page 2: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/2.jpg)
Agenda
Introduction What is a web service Basic Architecture Extended Architecture WS Stacks
![Page 3: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/3.jpg)
Introduction
The Need: The expanding WWW is not able to communicate correctly.
Distributed Systems – Maturity in the enterprise, only born in WWW.
Failure of COM and CORBA to interoperate, lots of security issues over the web.
![Page 4: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/4.jpg)
Introduction
The opportunity: evolve of several Web Technologies such as SOAP, XML and WSDL.
![Page 5: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/5.jpg)
What is a Web Service
Software system Identified by URI Defined and described using XML Can be discovered XML based messages over internet
protocols
![Page 6: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/6.jpg)
Web Services are an Architectural Evolution.Web Services are an Architectural Evolution.
Main Frame
IBM
Main Frame
Data Base
2 Tier
Data Base
3 Tier
Web Server
Web
Internet
Web Server
N Tier
Internet
ApplicationServer Web Server
Internet
ApplicationServer
ApplicationServer
Web Server
![Page 7: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/7.jpg)
Technology Evolution
XMLXML
ProgrammabilityProgrammabilityConnectivityConnectivity
HTMLHTML
PresentationPresentation
TCP/IPTCP/IP
Technology
Technology
Innovation
Innovation
FTP,FTP, E-mail, Gopher
E-mail, GopherWeb Pages
Web Pages
Browse Browse the Webthe Web
Program Program the Webthe Web
Web Services
Web Services
![Page 8: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/8.jpg)
Some Terminology SOAP: Simple Object Access Protocol (remote invocation)
WSDL: Web Service Definition Language (service characteristics)
UDDI: Universal Description, Discovery, and Integration (directory)
XKMS: XML Key Management Specification (under development)
XML: Extensible Markup Language
XLANG: Transactional support (under development)
ebXML: (e-business XML)
![Page 9: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/9.jpg)
Basic Architecture
Various components that comprise a WS “Stack”Exchanging messagesDescribing Web servicesPublishing and Discovering WS description
The Basic architecture defines an interactions between SW agents
![Page 10: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/10.jpg)
Basic Architecture (cont.)
Models interactions between three roles:Service providerService discovery agencyService requestor
Models three operations:PublishFindBind
![Page 11: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/11.jpg)
Basic Architecture (cont.)
Service Request
or
Service Provider
Discovery Agency
Discovery Agency
Client
Service
Service Description
Service Description
find
Interact
Publish
![Page 12: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/12.jpg)
Basic Architecture (Cont.)
Typical scenario: Service provider hosts a network accessible software
module (an implementation of WS) The service provider defines a service description and
publishes it. The service requestor uses a find operation to retrieve
the description from the Disco Agency The Service requestor uses the description to bind
with the service provider.
![Page 13: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/13.jpg)
Basic Architecture (Cont.)
Requestors and Providers interact using Message Exchange Patterns (MEP’s)
The description includes data types, MEP info and address of the service provider.
![Page 14: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/14.jpg)
Basic Architecture (cont.)
The Components:The Service:
the implementation of the WS whose description is the interface.
A software module deployed on the network. It exists to be invoked or to interact with service
requestor It may also act a a requestor using other WS in its
implementation
![Page 15: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/15.jpg)
Basic Architecture (Cont.)
The Components:The Service Description:
Contains the details of the interface and implementation
Data types, Operations, Binding info, network locations.
Metadata : Categorization, etc. Published to a requestor directly or to a Disco
Agency
![Page 16: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/16.jpg)
Basic Architecture (Cont.)
The Roles:Service Provider:
The platform that hosts access to the service. Acts as a server for the requestor in the MEP
Service Requestor: The application that interacts with the service. Can be played by a browser operated by human or
by a program with no UI. Acts as a client.
![Page 17: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/17.jpg)
Basic Architecture (Cont.)
The Roles:The Discovery Agency:
A searchable set of service descriptions. Centralized or Distributed. Can be push or pull. Support static and dynamic binding for apps.
![Page 18: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/18.jpg)
Basic Architecture (Cont.)
The Operations:Publish:
The service publishes its description such that the requestor can find it.
Find: The service requestor retrieves a service
description directly or queries the registry. Can be involved in the design time or run time.
![Page 19: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/19.jpg)
Basic Architecture (Cont.)
The Operations: Interact:
The service requestor invokes or initiates an interactions with the service.
Single Message One Way, Broadcast, Multi Message conversation, etc.
Synchronous or Async.
![Page 20: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/20.jpg)
Extended Architecture
Extends the basic architecture with additional features and functionality, extending the technologies and Components.
![Page 21: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/21.jpg)
Extended Architecture (Cont.)
List of Features (Partial):A sync. MessagingAttachments – packaging of multiple docs
together, binary data, etc. (SOAP with Attachments and DIME)
CachingLong running transactionsMessage Authentication – HTTP auth, x.509
![Page 22: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/22.jpg)
Extended Architecture (Cont.)
List of Features (Partial):Message Confidentiality – SSL/TLS, SOAP
encryptionMessage Integrity – digital signature with
SOAPManagement messagesSession
![Page 23: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/23.jpg)
Web Services Stacks
The “stack” of technologies create the protocol.
![Page 24: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/24.jpg)
WS Stacks – Wire Stack
Wire StackEncapsulates the concepts and technologies
needed for the actual, physical exchange of information between the roles mentioned before.
Network transport Message packaging Message extensions
![Page 25: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/25.jpg)
WS Stacks – Wire Stack
![Page 26: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/26.jpg)
WS Stacks – Wire Stack
Transport:HTTP is the de facto standard network
protocol for internet available web services. Intranet domains may use MQSeries,
CORBA, etc.The choice of network technology can be
made transparent to the developer and consumer of the service
![Page 27: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/27.jpg)
WS Stacks – Wire Stack
Packaging:SOAP is the de facto standard for XML
messaging. Relatively simple, thin layer on top of existing
network technologies (HTTP). Extensible, allows solutions to be incrementally
applied as needed. Based on XML, enjoys a broad support from the
community More on SOAP later.
![Page 28: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/28.jpg)
WS Stacks – Wire stack
Extensions:Provides a framework that allows additional
information to be attached to WS messages.SOAP defines a mechanism to incorporate
orthogonal extensions (features).A broad collection of features are already
standard, and more to come…
![Page 29: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/29.jpg)
WS Stacks – Wire stack
![Page 30: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/30.jpg)
WS Stacks – Description Stack
![Page 31: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/31.jpg)
WS Stacks – Description Stack
A stack of description documents defined using XML Schema.
Through the service description a service provider communicates all the specifications for invoking the web service.
Uses WSDL for base level service desc.
![Page 32: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/32.jpg)
WS Stacks – Description Stack
Interface and implementation: The messages
the service expects and returns, and how to encode the messages and where to send them to.
Minimum service description.
![Page 33: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/33.jpg)
WS Stacks – Description Stack
Policy: defines business context, QoS, security req,
etc. Presentation:
how to render the input/output messages on screen for different devices/
![Page 34: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/34.jpg)
WS Stacks – Description Stack
The upper levels of this stack are somewhat left for the user to guess…
![Page 35: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/35.jpg)
WS Stacks – Discovery stack
![Page 36: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/36.jpg)
WS Stacks – Discovery stack
The discovery stack can be implemented with a range of solutions.
Service discovery depends on service publication.
Any mechanism that allows the service requestor to gain access to the service description and make it available to the application at runtime qualifies as service discovery
![Page 37: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/37.jpg)
WS Stacks – Discovery stack
Publication:Several tools exist that help the developer to
produce the service description.Direct publish : send description directl to the
user (email, ftp, etc)UDDI Registry: business context and
toxonomies.
![Page 38: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/38.jpg)
WS Stacks – Discovery stack
Discovery and publication:Service requestors can retrieve a service
description at design time or run time, from a web page (URL), repository or UDDI registry.
The service requestor uses the description to create SOAP requests to send to the service.
![Page 39: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/39.jpg)
WS Stacks – Discovery stack
Inspection: Inspection technologies such as WSIL provide a de-
centralized service discovery method Local service discovery for ‘local’ web service
applications (micro SOAs that don’t leave the box… all else is the same except it limits where it looks for services).
Application integration. Discovery agents populated by crawlers looking for
WSIL documents. Management topologies of available services (but its
not a discovery source).
![Page 40: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/40.jpg)
WS Stacks - Summary
![Page 41: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/41.jpg)
Questions
![Page 42: Web Services Presented By : Noam Ben Haim. Agenda Introduction What is a web service Basic Architecture Extended Architecture WS Stacks](https://reader036.vdocument.in/reader036/viewer/2022070400/56649f135503460f94c2760c/html5/thumbnails/42.jpg)
Bibliography
W3C Web services architecture: http://www.w3.org/TR/ws-arch/
W3C Web Services Glossary: http://www.w3.org/TR/ws-gloss/
Web Services Architecture Usage Scenarios :
http://www.w3.org/TR/ws-arch-scenarios/