Introduction to Web Services
Download
Report
Transcript Introduction to Web Services
Introduction
CSIE, Da-Yeh University
1
History of Software Development
Traditional Programming Paradigm
Structured Programming (1970’s)
Behind schedule, costly, and unreliable.
Systematical analysis of the problems.
Does not mirror the real world entities.
Object Oriented Programming (1980’s – 1990’s)
Object technique is a packaging scheme to create
software units.
Use classes to represent the real world entities.
Web service take advantages of the OO technology.
2
Component-based Development
A component is a piece of software that satisfies
It must be deployable on its own
It must publish and adhere to a programming interface.
3
Component-based Development
The limitation of using components
It takes a lot more effort to develop components that is
reusable.
It is difficult to find the right components.
It is hard to coordinate the releases of new components.
4
Client Server Design
5
Internet Design
6
Application Server Architecture
7
Distributed Computing
The computing tasks are distributed over networks.
Components extended at different computers must be
able to communicate with each other.
Interface and response
Security
Client
Proxy
Client
Proxy
Infrastructure
Application
internet
8
Distributed Computing
Different technology
Object Management Group (OMG) – Common Object
Request Broker Architecture (CORBA)
Microsoft – Distributive Component Object Model
(DCOM)
IBM – Distributive System Object Model (DSOM)
Sun Micro – Remote Method Invocation (RMI)
Components from different technology communicate
with each other through a bridge.
COM/CORBA bridge
Poor interoperability
9
Distributed Computing Infrastructure
Microsoft’s DCOM
Shipped with versions of Windows NT beginning with
version 4.0 and including Windows 2000.
Provide both local and remote COM capabilities. It is
now an inherent part of Win32-based platforms.
10
N-tier Web-based Application
The client-tier uses browsers as the user interface.
The middle-tier provides all the business logic and
processes.
The information-tier is the information tier.
Client-tier
Middle-tier
data
Information-tier
data
11
Alternative to Web Service
Screen Scraping: retrieving data from other HTML
documents.
What are the disadvantages of using screen scraping?
Middle Tier
Application
Database
Web page
HTML
12
Web Service Technology
Address the issue of poor interoperability.
Use open standard.
Easy to debug.
Web services use text-based protocols.
Use XML as the standard for exchanging information.
13
Definition of Web Service
Web services are software programs that use XML to
exchange information with other software via internet
protocol.
Characteristics of web service
Web services are programmable.
Web services are based on XML.
Web services are self-describing (WSDL).
Web services are discoverable (UDDI).
14
Web Service Architecture Protocols
The core principles drive the design and
implementation of WS architecture protocols
Message orientation
Protocol composability
Autonomous services
Managed transparency
Protocol-based integration
15
Benefits over Distributed Computing
Companies can expose and access web services using
technology already in place.
Web service is more interoperable.
Nearly all major software vendors have agreed to use
the same core standards.
16
Challenge of the Web Service
SOAP, WSDL, UDDI are still in draft.
Royalty fees may required for some standards.
Lack of standard security procedure.
Defining and guaranteeing QoS.
Slow response time
Infrequent update
Inability to handle large number of requests
17
Web Service Architecture
UDDI
Registry
2
WSDL
Document
3
1
4
client
5
Query Registry to locate service
Refer to WSDL documents
Access WSDL documents
Provide data to interact with web
service
Send SOAP message request
Send SOAP message response
Web
Service
6
18
Web Service Terminology - SOAP
SOAP (Simple Object Access Protocol)
A common way to package messages that are
exchanged between two processes.
A common set of serialization techniques for the data
that is exchanged.
A mechanism that allows Remote Procedure Calls
(RPC) to be made across a heterogeneous set of
platforms.
19
Web Service Terminology – XSDL
XSDL (XML Schema Definition Language)
XSDL defines the layout of and the constraints on an
XML document.
XSDL supplants a previous standard known as Data
Type Definition (DTD).
20
Web Service Terminology - UDDI
UDDI (Universal Description, Discovery, and
Integration) registry
The most commonly known method of discovering
Web services.
UDDI registry’s structure is similar to the phone book
White page: list contact information and descriptions of
companies.
Yellow page: provide classification information about
companies and details on companies’ electronic capability.
Green page: list technical data regarding services.
21
Web Service Terminology - WSDL
WSDL (Web Service Description Language)
It provides details about the functionality that is
implemented, which messages are used to request the
service, and the sequence in which the messages are
exchanged.
It is XML-based format.
Similar to the documentation to the ActiveX
components.
22
Web Service Terminology - others
XML ( eXtended Markup Language)
GXA (Global XML Architecture)
The main language used in Web service.
A set of protocols defined by Microsoft and others.
It provides an infrastructure that supports the most
commonly requested demands for commercial Web
service: security and routing.
WS-Security
It allows authentication established by one system to be
accepted by others (federated identity).
23
Web Service Terminology - others
WS-Routing
The typical mode for WS-Routing is to create a oneway path that the SOAP message must take.
WS-Referral
A protocol directly related to WS-Routing.
It allows for changes to the routing of a SOAP message
to be made dynamically.
24
Delivering Web Service
Service-oriented Architecture
Created by IBM.
Service provider
A server or system makes a Web service available over
network.
Provides a service interface, that enables other applications to
access the service.
Service broker
Service provider publishes its service to service broker.
Service broker communicates with requesters and directs them
to the appropriate provider.
25
Delivering Web Service
Service requester
A networked server or system that access or employed a Web
service.
Service
provider
bind
publish
Service
broker
find
Service
requester
26
Web Service Life-cycle Stages
Creation
Design, development, documentation, testing
and distribution.
Publication
Web service hosting and maintenance.
Promotion
Directory services, value-added services and
accreditation.
Sale
Auditing and accounts management.
27
ASP .Net Web Service Architecture
VB
Application
Browser
Office
Documents
Other Web
Service
SOAP Messages
Classic ASP
ASP .Net
XML Web
Services
.ASP
.ASPX
.ASMX
RPC-Style
Listener
WSDL
Document-Style
Listener
WSDL
Wrapper Classes
Business
Objects
Database
Server
28