EIE424%20Distributed%20Systems%20and%20Network%20Programming%20%20Part-II%20%20Case%20Study:%20Web%20Services - PowerPoint PPT Presentation

About This Presentation
Title:

EIE424%20Distributed%20Systems%20and%20Network%20Programming%20%20Part-II%20%20Case%20Study:%20Web%20Services

Description:

Ethan Cerami, Web Services Essentials, O'Reilly, 2002. ... Vignette portal server. Web services gateway built on Infravio software ' ... – PowerPoint PPT presentation

Number of Views:108
Avg rating:3.0/5.0
Slides: 29
Provided by: ValuedSony4
Category:

less

Transcript and Presenter's Notes

Title: EIE424%20Distributed%20Systems%20and%20Network%20Programming%20%20Part-II%20%20Case%20Study:%20Web%20Services


1
EIE424 Distributed Systems and Network
Programming Part-IICase Study Web Services
Lecturer Dr. Daniel Pak-Kong LUN
Room DE637 Tel 27666255 E-Mail
enpklun_at_polyu.edu.hk
Web page
www.eie.polyu.edu.hk/enpklun/EIE424/EIE424.html
2
Contents
  • Introduction to Web Services
  • XML-RPC
  • SOAP
  • WSDL
  • UDDI
  • Security issues in Web Services

3
References
Ethan Cerami, Web Services Essentials, OReilly,
2002. U.Wahli, G.G. Ochoa, S. Cocasse and M.
Muetschard, WebSphere Version 5.1 Web Services
Handbook, IBM Redbooks, 2nd Ed, 2004
4
Introduction to Distributed Systems
  • Distributed systems have been the development
    trend of current computer systems
  • A distributed system consists of a collection of
    autonomous computers
  • linked by a computer network
  • equipped with distributed software
  • Offer many advantages comparing with a
    centralized multi-user system
  • Better price / performance ratio
  • Fault tolerance
  • Modular expandability

5
Centralized Multi-user System (popular in 80s)
Mainframe or Minicomputer
Terminals
Network
Problems Single point of failure Expansive
development and maintenance cost Difficult to
expand
6
Distributed Systems
Heterogeneous type of computers
Network
Servers and databases
7
Difficulties of Developing a Distributed System
  • For a distributed system to function correctly,
    application components (e.g. objects) executing
    on different computers throughout a network must
    be able to communicate
  • In 80s, no formal way was provided to allow
    communication between application components
    running in different computing platforms
  • E.g. a Unix application could never talk with a
    DOS application

8
  • Start to be aware of the problem in early 90s
  • Many companies and organizations began developing
    technologies to enable communication between
    distributed components, e.g.
  • OMGs CORBA
  • Microsofts DCOM
  • Sun Microsystems RMI
  • IBMs DSOM
  • Businesses could use these technologies to
    integrate applications with business partners
    computer systems

9
  • Problem Interoperability among these
    technologies was still limited
  • E.g. DCOM and CORBA cannot communicate easily
  • May need a DCOM/CORBA bridge to allow
    communication
  • If DCOMs or CORBAs underlying protocols change,
    programmers must modify the bridge to reflect the
    change
  • Hence not transparent to programmers

10
Emergence of Web Services
  • Web Services improve distributed computing
    capabilities by addressing the issue of limited
    interoperability
  • Unlike DCOM and CORBA, use open standards
    (nonproprietary)
  • In 1999, HP first introduces the concept of Web
    Services in their product e-Speak, however the
    underlying technologies is still proprietary
  • In June 2000, Microsoft coined the actual term
    Web Services as a key component of its .Net

11
  • Currently many competing frameworks and proposals
    for Web Services
  • Three main contenders
  • Microsofts .NET
  • IBM Web Services
  • SUNs Java System (or formerly Open Net
    Environment (ONE))
  • They all share the basic Web Services definition
    and vision
  • All of the frameworks share a common set of
    technologies, mainly SOAP, WSDL, and UDDI

12
Advantages of Web Services
  • Use open standards
  • Enable components written in different languages
    and for different platforms to communicate
  • Use modular approach
  • The same Web Services can be used for different
    applications and different companies
  • Comparatively inexpensive to implement
  • Use the Web
  • Can be implemented incrementally
  • Allow easier startup

13
What exactly is a Web Service?
  • A Web Service is a service on the Internet that
  • Use a standardized XML messaging system
  • Not tied to any one operating system or
    programming language
  • Optional features
  • Self-describing provide public interface to the
    service via a common XML grammer
  • Discoverable Interested parties can find a
    service and locate its interface

14
A Basic Web Service
XML-RPC SOAP HTTP GET/POST
15
Human-Centric vs Application-Centric
  • Traditional web applications are human centric
  • Humans are the primary actors initiating most web
    requests

HTTP GET
HTTP response with HTML page
Web Server
16
  • With web services, we move from a human-centric
    Web to an application-centric Web
  • Conversation takes place directly between
    applications as easily as between web browsers
    and servers

XML Request
Application
XML Response
On to other applications
Web Server
17
Web Services Vision Automated Web
  • In the long term, Web services offer the promise
    of the automated Web, or just-in-time
    application integration

Service Registry
1. Discover services 2. Ask for service
description 3. Receive service description 4.
Invoke remote service 5. Obtain results
Web Server
?
?
Application
?
?
?
18
Automated Web Example
  • Travel agencies have been making use of Web
    Services to automate the ticket booking services
  • A customer can make on a Web site various
    bookings such as flight ticket, car rental, hotel
    room, etc. at one shot
  • Based on Web Services, business data can be
    passed from one party to another
  • A final plan will be devised that meets the
    schedule and budget of the customer

19
As App Server for generating a package for
flight ticket
Web Server of Company A
Service Registry
A Flight ticket B Car Rental C Hotel Booking
  • Customer makes specifications on schedule, budget
    ranges, and other specific requirements (e.g.
    non-smoking room etc.)
  • System responses him with a list packages for him
    to choose

Web server of Company C
Web service gateway
Cs App Server for generating a package for hotel
room
Web Server of Company B
Bs App Server for generating a package for car
rental
20
Real Life Example Providence Health System
  • Providence Health System - a system of hospitals,
    clinics and assisted-living complexes in the
    Northwest, USA with over 600,000 members
  • Launch a Web Service project for some years to
    make medical and other records, which are spread
    across disparate systems, accessible to patients
    and physicians
  • The system aggregates data from 27 physician
    offices
  • Those offices store their data in back-end
    billing, clinical laboratory and ambulatory care
    record systems in 10 Oracle databases Providence
    maintains on its network
  • Save more than 1 million per year and lead to
    better patient care and potentially save lives

21
?
?
?
Vignette portal server
Primary care physician
ER doctor
?
VitalWorks Enterprise Practice manager
Web services gateway built on Infravio software
Eclipsys Master Patient Index System
?
Logician Patient Record System
Data mart built on Oracle databases
22
  • ER doctor uses portal to request info of a
    patient
  • Web services gateway manages connection to portal
    and kicks off Web service to collect info on
    patient from data mart and display them in
    portal
  • Behind the scenes, the data mart collects on
    30-minute intervals the back-end physician
    systems that store the records
  • ER doctor is presented with a complete record
    from the patients primary care physician
  • Primary care physician can use the same portal
    interface and Web service to collect medical
    records for new or referral patients

23
Remarks
  • Providence Health System is an internal system
  • Will have exploited the full power of Web
    Services when other external healthcare
    organizations work together to jointly provide
    the services
  • However, a more stringent security measure needs
    to be devised to protect patients data

24
Do we have Automated Web now?
  • With Web Services, most of the above processes
    can be automated
  • However, there is no mechanism for automating
    business relationships
  • Human intervention is still required in
  • Price bargaining
  • Negotiation on delivery schedule
  • Legal ramifications if deliveries are not made
  • Interaction when the deliverable has bug!
  • May not be easily solved hence just-in-time
    application integration may take time to achieve

25
Web Service Architecture
  • Three major roles within the web service
    architecture
  • Service Provider
  • Implement the service and make it available on
    the Internet
  • Service Requestor
  • Utilize an existing web service by opening a
    network connection and sending an XML request

Service Registry
  • Service Registry
  • Provide a central place where developers can
    publish new services or find existing ones

?
?
Service Requestor
  1. Discover Service
  2. Invoke Service

Service Provider
26
Web Service Protocol Stack
Discovery UDDI
Searching / Publishing Web Services
Description WSDL
Describing Web Services interface
XML Messaging XML-RPC, SOAP,XML
Transport HTTP,SMTP,FTP, BEEP
Encoding messages in XML format
Transporting XML messages between client and
server
27
Deploying Web Services - Service Requestor
Perspective
Retrieve service description file WSDL or
XML-RPC instructions
Step 2
Step 3
Create XML-RPC or SOAP Client
28
Deploying Web Services - Service Provider
Perspective
Create an XML-RPC or SOAP service wrapper
Step 2
Create WSDL service description or XML-RPC
integration instructions
Step 3
Deploy service by, e.g. installing an App Server
Step 4
Register new service via UDDI
Step 5
Write a Comment
User Comments (0)
About PowerShow.com