No Slide Title

Download Report

Transcript No Slide Title

Web Services Architecture Overview
Web Services Poll
Will Web Services be the next BIG thing?
A. Yes
B. No
Web Services Model
Web Services Definition
What is a Web Service?
a)
b)
c)
d)
e)
f)
g)
h)
Loosely coupled, reusable software component
A self-contained "applet" that performs a single task
An interface that describes a collection of operations that are
network-accessible through standardized XML messaging
Web-native building blocks that can be combined to form the
"next generation of Internet applications”
Protocol that will transform the Internet into a way to program
and specify the way you exchange information
Any service offered over the Web
Programmable application logic accessible using standard
Internet protocols
.NET
Web Services (Interoperability) Stack
• Needed for publish, find, bind
operations
• Upper layers build on lower ones
• Lower 3 layers required for a
Web Service
• QOS, Management, and
Security needed for e-business
Network
• Foundation of the Web Services Stack
• HTTP is the de facto standard network protocol
• Other Internet protocols can be supported
• SMTP, FTP, …
• Intranet domains can use reliable messaging
• CORBA, MOM, RMI,…
• Transparent to the Web Services developer
XML-messaging based Distributed Computing
• Fundamental underpinning of Web Services is XML
• SOAP is the current XML messaging protocol
• Will most likely be replaced by XMLP (W3C)
• SOAP consists of 3 parts
• Envelope – defines framework for describing what is in
•
•
a message
Encoding rules – expressing instances of applicationdefined data types
Request/Response model for RPCs
May be asynchronous or synchronous
Basic SOAP Architecture
Service Description
• Communicate the specifications for invoking the Web
service to the service requestor
• Neither requestor/provider are aware of
• OS
• Programming language
• Distributed Object Model
• Key to loose coupling
Web Services Description Language
• XML-based language used to define Web services
and to describe how to access them.
• Similar to Java Interfaces, IDL, abstract classes
A set of related ports
An address for a binding (URL)
Message format and protocol details
Set of operations (input, output)
Abstract definition of data being sent
Data type definitions describing the
messages (XSD)
Completing the Web Service Description
• Business Info (Name, Type, Products, Category,…)
• Universal Description, Discovery & Integration (UDDI)
• Data structure standard for representing description
•
information in XML
4 fundamental data structures
Publication of Service Descriptions
• Making a WSDL document available to a service
requestor
• Production of Service Descriptions
• Most tools generate the service description
• Publishing
• Varies based on the dynamic nature of the application
• Direct publish (email, FTP, snailmail,…)
• Retrieved via a URL (DISCO, ADS)
HTTP GET
Publication of Service Descriptions
• Universal Description, Discovery and Integration
• Private Nodes (Control, security, reliability,…)
Internal Enterprise Application
Portal
Partner Catalog
E-Marketplace
• Public Node
Operator Node
• Supported, replicated, and hosted by IBM,
Microsoft, and HP (Ariba has become a registrar)
Service Discovery
• Mechanism for providing runtime access to the service
description
• Dependency on service publication
• Can’t be discovered if it ain’t published
• Service Registry/UDDI Node
• Query mechanism
Private Nodes
Price, Quality of Service, Brand, etc
Public Nodes
???, exercise caution
e-Business
• Extensions needed to fully support e-business
• Security – Authorization, Digital signatures, SSL, …
• Reliable Messaging – Guaranteed delivery (HTTPR)
• Quality of Service – Expected execution time, timeout
•
•
•
•
values, …
Systems & Application Management – Control & configure
infrastructure and components
Service Context – Type of wireless device, User profile, …
Conversations & Activities – Transactions, collaboration, …
Portals & Portlets – Provide support for Web services
Business Processes & Workflows
• Choreography for interactions between component
Web Services
• Aggregation of Web services (business transaction)
Business Processes & Workflows
• Long way to go…
•
•
•
•
•
Web Services Flow Language – IBM
XLang – Microsoft
ebXML
Business Process Modeling Language – OASIS
RosettaNet
Web Services Benefits
• Interoperability
• Any web service can interact with any other web service.
• Ubiquity
• Web services communicate using HTTP and XML.
• Low barrier to entry
• The concepts behind Web services are easy to understand,
many toolkits are free and allow developers to quickly create
and deploy Web services.
• Industry Support
• All of the major vendors are supporting SOAP and the
surrounding Web services technologies.
“Web services are relatively low risk technology that can be used to
implement high risk business strategies.”
Questions???