CS 493/693: Distributed Systems
Programming
V. “Juggy” Jagannathan
CSEE, West Virginia University
February 07, 2005
Chapter 5: Web Services*
Web Services: Concepts, Architectures and
Applications
G. Alonso et. al.
Springer Verlag
* Pictures and graphics in this presentation were provided by the
authors of the book shown above.
Defining Web Services

By the UDDI consortium: “self-contained, modular business applications that have open, Internet-oriented,
standards-based interfaces.”

By W3C: “a software application identified by a URI, whose interfaces and bindings are capable of being defined,
described, and discovered as XML artifacts. A web service supports direct interactions with other software agents
using XML-based messages exchanged via Internet-based protocols.”

Webopedia definition: “a standardized way of integrating Web-based applications using the XML, SOPA, WSDL,
and UDDI open standards over an Internet-protocol backbone. XML is used to tag the data, SOAP is used to
transfer the data, WSDL is used to describe the services available, and UDDI is used for listing what services are
available”

More specifically: It is NOT an URL with a CGI script behind it to take in arguments and return a web page as a
result – though some have characterized such a system as providing a web-based service, hence a web service.
Motivating the Need for B2B Integration
 Example problem
 Supply chain automation – integration of multiple, independent,
heterogeneous systems spanning multiple business entities
customer
supplier
web
server
internal procurement
requests
internal
infrastructure
internal
infrastructure
web
server
Figure 5.1.
internal
infrastructure
warehouse
Copyright Springer Verlag Berlin Heidelberg 2004
B2B interactions
occur by accessing
Web pages, filling
Web forms, or via
email.
Limitations of Conventional Middleware in B2B Integration
 In cross-organizational interactions, middleware has to
be under the control of one of the interacting
organization
 This is not practical in real world. No one company will
agree to such a scheme.
 Figure 5.2
third party
a “global” workflow is executed
here
WfMS
Figure 5.2.
WfMS adapter
the combination of message
broker and adapters enables
interoperability
message broker
customer
supplier
customer’s
adapters
internal procurement
requests
internal
infrastructure
Copyright Springer Verlag Berlin Heidelberg 2004
supplier’s
adapters
warehouse
warehouse’s
adapters
internal
infrastructure
internal
infrastructure
Point-to-point integration across companies
customer
supplier
message broker
XYZ
message broker
XYZ
customer’s
adapters
supplier’s
adapters
internal
infrastructure
internal
infrastructure
Figure 5.3.
Copyright Springer Verlag Berlin Heidelberg 2004
Result of an absence of standardized middleware platform
customer
warehouse
another party (XYZ)
yet another party
(ABC)
middleware for
supplier-customer
interaction
middleware for
supplier-warehouse
interaction
middleware for
supplier-XYZ
interaction
middleware for
supplier-ABC
interaction
supplier’s
adapters
supplier’s
adapters
middleware for integrating
the middleware
supplier
supplier’s
adapters
internal infrastructure
Copyright Springer Verlag Berlin Heidelberg 2004
Figure 5.4.
Problems with conventional middleware to address cross-organizational integration
 In Enterprise Application Integration interactions are
typically short lived – not true for cross-organizational
interactions
 Interactions in cross-organization integration typically
handled as asynchronous transactions
 2 Phase commit protocols are not that useful
 Trust relationships become problematic
B2B integration before web services
 Point-to-point integration – costly due to numerous conflicting
approaches (.NET, CORBA, EJB etc)
 EDIFACT and messaging standards
 WALMART was successful in implementing supply-chain inventory
order system – WALMART can justify expensive systems.
 One-of systems, hard to implement and costly to implement
 “The gap between what web provides (HTTP, XML) and what
application integration requires that Web services are trying to fill.” pg.
131, Web Services book.
B2B Integration with Web Services
 Contributions of web services
 Service-oriented architectures
 Addressing loosely-coupled peer-to-peer systems
 Redesign of middleware protocols
 to support decentralized execution and multiple trust
domains
 Standardization
customer
Web
service
internal procurement
requests
internal
infrastructure
interactions based on protocols
redesigned for peer to peer and
B2B settings
internal functionality made
available as a service
Copyright Springer Verlag Berlin Heidelberg 2004
supplier
languages and protocols
standardized, eliminating need for
many different middleware
infrastructures (need only the
Web services middleware)
Web
service
internal
infrastructure
Web
service
internal
infrastructure
warehouse
Figure 5.5.
Web
service
Web
service
Web
service
middleware
internal
service
internal
service
Company A (provider)
wide area network (Internet)
Web Services and EAI
client
middleware
internal
service
internal
service
Company B (client)
Figure 5.6.
Copyright Springer Verlag Berlin Heidelberg 2004
Web services to integrate intra-enterprise applications
Company A (or a LAN within Company A)
integrating application (contains
the composition logic)
Web service-enabled broker
sendmail
application
SmartQuotation
assumes all back-end
systems are accessible
as Web services
Copyright Springer Verlag Berlin Heidelberg 2004
DBMS
SmartForecasting
applications
XYZ
Figure 5.7.
Web service description
vertical standards
business protocols
interfaces
common base language
directories
properties and semantics
E.g. RosettaNet
UDDI
WSCL, BPEL
WSDL
XML
UDDI
Figure 5.8.
Copyright Springer Verlag Berlin Heidelberg 2004
Service Interactions
WS-Transaction
middleware properties (horizontal protocols)
WS-Coordination
protocol infrastructure (meta-protocols)
SOAP &
WS-Security
HTTP
basic and secure messaging
transport
Figure 5.9.
Copyright Springer Verlag Berlin Heidelberg 2004
Web Services composition
 A service that is implemented using local system resources is called
“basic web service”
 A service that relies on other web services is labeled “composite
web service.”
 Whether a web service is composite or basis is simply an
implementation issue transparent to the “client” or “user” of the
service
 Business Process Execution Language is one of the standards
being used for composing web services.
Two facets of Web Services Architectures
Company D (client)
Company A (provider)
client
Web service
Web service interface
Access to internal systems
internal
architecture
Web
service
external
architectur
e
Web
service
Web
service
Company C
(provider)
middleware
internal
service
internal
service
Copyright Springer Verlag Berlin Heidelberg 2004
Web
service
Web
service
Company B (provider)
Figure 5.10.
Conventional Middleware Tiers
other tiers
service interface
integration logic
middleware
service interface
service interface
integration logic
integration logic
middleware
middleware
resource
manager
resource
manager
Copyright Springer Verlag Berlin Heidelberg 2004
resource
manager
resource
manager
Figure 5.11.
Internal Architecture: Web services layered on top of middleware
Company A (service provider)
Web service interface
clients
from other
companies
access to internal systems
Web services middleware (internal)
service interface
integration logic
conventional middleware (includes
middleware services)
other tiers
Copyright Springer Verlag Berlin Heidelberg 2004
other tiers
Conventional
middleware provides
lots of services (load
balancing, transaction
support, etc).
Current Web services
middleware is quite
poor in this respect.
Figure 5.12.
External Architecture of Web Services
Company A (service requester)
Company B (service provider)
Web service
Web service client
Web services middleware
(internal)
3. interact
Web services middleware
(internal)
other tiers
other tiers
2. find
the abstraction
and
infrastructure
provided by the
registry are part
of the external
middleware
1. publish the service description
service descriptions
Company C (directory service provider)
Copyright Springer Verlag Berlin Heidelberg 2004
Figure 5.13.
Web Service Architecture augmented by Peer-to-Peer protocol extensions
external middleware
Company A
(service requester)
Web service
client
internal
middleware
other tiers
Company B
(service provider)
Web service
transaction
mgmt
transaction
mgmt
other protocol
infrastructure
other protocol
infrastructure
composition
engine
composition
engine
internal
middleware
other tiers
service descriptions
Copyright Springer Verlag Berlin Heidelberg 2004
Company C
(directory service provider)
Figure 5.14.
Descargar

No Slide Title