WebServicex

fortnecessityusefulΛογισμικό & κατασκευή λογ/κού

14 Δεκ 2013 (πριν από 3 χρόνια και 9 μήνες)

147 εμφανίσεις

Introduction to Web Services, and
Key

Components


-
Jatin

Singhal

Outline

1)
What are Web services?

2)
What are they Good for?

3)
What to look out for?

4)
Where are they being used?

5)
Key Components
-

XSD and WSDL

Web Services Evolution

Web Services are an Architectural Evolution.


What are Web Services

Main Frame

Web Evolution

What are Web Services

Programmability

Connectivity

Presentation

Browse

the Web

Program

the Web

Web Evolution

Definition

Web service is a
software system designed to
support
interoperable machine
-
to
-
machine interaction over a
network
-

Standard W3C Definition
.


A

Web

Service

is

a

URL
-
addressable

software

resource

that

performs

functions

(or

a

function)
.



Web

Services

communicate

using

standard

protocol

known

as

SOAP

(Simple

Object

Access

Protocol)
.



A

Web

Service

is

located

by

its

listing

in

a

Universal

Discovery,

Description

and

Integration

(UDDI)

directory
.

Web Service
-
Basic Architecture

Characteristics


A Web Service is
accessible over the Web
.



Web Services communicate using
platform
-
independent and language
-
neutral

Web protocols.



A Web Service provides an
interface

that can be
called from another program.



A Web Service is
registered and can be located

through a Web Service Registry.



Web Services support
loosely coupled

connections
between systems.


Web Service Environment


Development

Deployment

Directory

Infrastructure


Web Service Landscape

Development and

Assembly Environment

Development and

Assembly Environment

Service Infrastructure Services

Service Infrastructure Services

Provisioning

Billing

Authorization

Identity

Authentication

Discovery

Auditing

User Session

Management

State

Management

Transaction

Management

.NET

J2EE

Description

Web Services Deployment

Runtime

Component Deployment

SOAP

Description

Security

Application Server

Application Server

Web Services Deployment

Runtime

Component Deployment

SOAP

Description

Security

.NET Server

Directory

Services

Directory

Services

UDDI Services

Development and

Assembly Environment

Development and

Assembly Environment

.NET

J2EE

Development Environment


Design and Code Web Services


Expose Existing Resources as Web Services


Develop new applications from Web Services


Create Web Services interfaces from existing

applications.


Deployment Environment


Runtime


Security


WSDL / XML Schema Support


SOAP Support


Component Deployment


Management

Directory Environment



Locate Web Services



Publish Web Services



Understand the characteristics of Web Services


(capability, security, cost, etc.)

Infrastructure Service



Separate Business Logic from System Functions



Bundle Common Functionality across Web Services



Security (Authentication, Authorization)



Provide consistency among services

What are they good for?

In a lot of organizations, the data and logic of one application are basically
useless to other applications. When an application and its data are
isolated from other applications, we often say that they are in “
silos
.”


Web Services are better at sharing data and functions. The result is that
the “silos” come down, and previously isolated systems can talk to each
other.


Web Services are especially good at providing access through different
interfaces.


A Web Service can have a dedicated client application, but it can also be
readily accessed through browsers, wireless devices, voice
-
activated
interfaces, and so on.


Adding new access methods is much simpler than with a traditional
application.



What are they good for?

One of the more important innovations in Web Services
is “machine
-
to
-
machine communications.”


This means that a Web Service can ask another Web
Service to do something, and that Web Service can ask
another Web Service to do something, and so on.


In the future, many Web Services will really just be
aggregations of other Web Services.


Future applications will be assembled from a diverse group
of web services, aggregating functionality.


Reusability is extended to the execution level, versus
reusability from just the design and construction level.


What to look out for?

Web services standards for features su
transactions
are currently
nonexistent or still in their infancy compared to more mature
distributed
computing open standards such as
CORBA
.


Web
services may suffer from poor
performance compared to other
distributed computing approaches such as
RMI,
CORBA, or
DCOM.



This
is a common trade
-
off when choosing text
-
based formats. XML explicitly
does not count among its design goals either conciseness of encoding or
efficiency of
parsing.By utilizing
HTTP, web services can evade existing firewall
security measures whose rules are intended to block or audit communication
between programs on either side of the firewall.
WSDL (Web Services Description
Language)

As communications protocols and message formats are
standardized in the web community, it becomes increasingly
possible and important to be able to describe the
communications in some structured way. WSDL addresses this
need by defining an XML grammar for describing network
services as collections of communication endpoints capable of
exchanging messages. WSDL service definitions provide
documentation for distributed systems and serve as a recipe for
automating the details involved in applications communication.

Elements in a WSDL Document

Types


a container for data type definitions using some type
system (such as XSD)
.

Message


an abstract, typed definition of the data being
communicated
.

Operation


an abstract description of an action supported by
the service
.

Port
Type

an abstract set of operations supported by one or
more endpoints
.

Binding


a concrete protocol and data format specification
for a particular port type
.

Port


a single endpoint defined as a combination of a binding
and a network address
.

Service


a collection of related endpoints
.

That seems enough for today!!!