Service Oriented Architecture Web and Grid Services - PowerPoint PPT Presentation

1 / 64
About This Presentation
Title:

Service Oriented Architecture Web and Grid Services

Description:

used to identify the interface, the location and access information ... WSDL is an XML-based language used to. define Web Services and describe how to. access them. ... – PowerPoint PPT presentation

Number of Views:184
Avg rating:3.0/5.0
Slides: 65
Provided by: byil9
Category:

less

Transcript and Presenter's Notes

Title: Service Oriented Architecture Web and Grid Services


1
Service Oriented ArchitectureWeb and Grid
Services
2
What is Service-Oriented Architecture?
  • Service-Oriented Architecture (SOA) is an
    architectural style. Applications built using an
    SOA style deliver functionality as services that
    can be used or reused when building applications
    or integrating within the enterprise or trading
    partners.

3
SOA
  • Uses open standards to integrate software assets
    as services
  • Standardizes interactions of services
  • Services become building blocks that form
    business flows
  • Services can be reused by other applications

4
What is a Service?
  • A service is a reusable component that can be
    used as a building block to form larger, more
    complex business-application functionality.
  • A service may be as simple as get me some person
    data, or as complex as process a disbursement.

5
What is a Service?
  • A service provides a discrete business function
    that operates on data. Its job is to ensure that
    the business functionality is applied
    consistently, returns predictable results, and
    operates within the quality of service required.
  • From a theory point of view, it really doesnt
    matter how a service is implemented for service
    requester.

6
Characteristics of a Service
  • Supports open standards for integration
    Although proprietary integration mechanisms may
    be offered by the SOA infrastructure, SOAs
    should be based on open standards. Open
    standards ensure the broadest integration
    compatibility opportunities.

7
Characteristics of a Service
  • Loose coupling The consumer of the service is
    required to provide only the stated data on the
    interface definition, and to expect only the
    specified results on the interface definition.
    The service is capable of handling all processing
    (including exception processing).

8
Characteristics of a Service
  • Location agnostic Users of the service do not
    need to worry about the implementation details
    for accessing the service. The SOA
    infrastructure will provide standardized access
    mechanisms with service-level agreements.

9
Characteristics of a Service
  • Stateless The service does not maintain state
    between invocations. It takes the parameters
    provided, performs the defined function, and
    returns the expected result. If a transaction is
    involved, the transaction is committed and the
    data is saved to the database.

10
Legacy Business Process
11
Architectural Choke Point
  • Extremely complex
  • Very tightly coupled
  • Difficult to find clean integration points
  • Lack of standards makes it difficult to integrate
  • Rigid architecture makes even small changes
    complex and costly

12
SOA Business Process
13
Web Services
  • Best way to realize Service Oriented Architecture

14
W3C Definition
  • A Web service is a software system identified by
    a URI, whose public interfaces and bindings are
    defined and described using XML. Its definition
    can be discovered by other software systems.
    These systems may then interact with the Web
    service in a manner prescribed by its definition,
    using XML based messages conveyed by Internet
    protocols.

15
Defacto standards
  • UDDI
  • WSDL
  • SOAP

16
(No Transcript)
17
Web Services Design Principles
Web-based Protocols Web-services based on
HTTP protocols can traverse firewalls, can work
in a heterogeneous environment
Interoperability SOAP defines a common standard
that allows different systems to interoperate
XML-based (XML schema) machine-readable
documents Modularity Service Components are
useful in themselves, reusable, composable
Availability Services are available to systems
that wish to use them Services must be exposed
outside of the particular system they are
available in Machine-readable description
used to identify the interface, the location and
access information Implementation-independence
Service interface available independent of the
ultimate implementation Published Searchable
service repositories of service descriptions
18
(No Transcript)
19
SOAP
  • A wrapper protocol
  • Written in XML
  • Independent of the wrapped data
  • Independent of the transport protocol
  • Efficient (according to the W3C)
  • A uni-directional message exchange paradigm

20
Packaging Soap
HTTP Post
SOAP Envelope
SOAP Head
SOAP Body
21
SOAP Message Format
  • lt?xml version1.0?gt
  • ltsoapEnvelope ...gt
  • ltsoapHeader ...gt
  • ...
  • lt/soapHeadergt
  • ltsoapBodygt
  • ltAdd xmlnshttp//gecici.org/gt
  • ltn1gt12lt/n1gt
  • ltn2gt10lt/n2gt
  • lt/Addgt
  • lt/soapBodygt
  • lt/soapEnvelopegt

22
Example of a SOAP Request
POST /StockQuote HTTP/1.1 Host
www.stockquoteserver.com Content-Type text/xml
charset"utf-8" Content-Length nnnn SOAPAction
"Some-URI ltSOAP-ENVEnvelope xmlnsSOAP-ENV"htt
p//schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV encodingStyle "http//schemas.xmlsoap.
org/soap/encoding/"gt ltSOAP-ENVBodygt
ltmGetLastTradePrice xmlnsm"Some-URI"gt
ltsymbolgtDISlt/symbolgt lt/mGetLastTradePric
egt lt/SOAP-ENVBodygt lt/SOAP-ENVEnvelopegt
23
Example of a SOAP Response
HTTP/1.1 200 OK Content-Type text/xml
charset"utf-8" Content-Length
nnnn ltSOAP-ENVEnvelope xmlnsSOAP-ENV
"http//schemas.xmlsoap.org/soap/envelope/"
SOAP-ENV encodingStyle "http//schemas.xmlsoap.o
rg/soap/encoding/"/gt ltSOAP-ENVBodygt
ltmGetLastTradePriceResponse xmlnsm"Some-URI"gt
ltPricegt34.5lt/Pricegt
lt/mGetLastTradePriceResponsegt
lt/SOAP-ENVBodygt lt/SOAP-ENVEnvelopegt
24
Example of a SOAP Error
HTTP/1.1 500 Internal Server Error Content-Type
text/xml charset"utf-8" Content-Length
nnnn ltSOAP-ENVEnvelope xmlnsSOAP-ENV"http//
schemas.xmlsoap.org/soap/envelope/"gt
ltSOAP-ENVBodygt ltSOAP-ENVFaultgt
ltfaultcodegt SOAP-ENV MustUnderstand
lt/faultcodegt ltfaultstringgtSOAP Must
Understand Error lt/faultstringgt
lt/SOAP-ENVFaultgt lt/SOAP-ENVBodygt lt/SOAP-ENVE
nvelopegt
25
WSDL Web Services Description Language
  • Definitions
  • - WSDL is an XML-based language used to
  • define Web Services and describe how to
  • access them.
  • - WSLD is an XML format for describing
  • network services as a set of endpoints
  • operating on messages containing either
  • document-oriented or procedure-oriented
  • information.

26
WSDL Structure
  • A WSDL document is an XML document

lt?xml version"1.0" encoding"UTF-8"?gtltdefinition
sgt lttypesgt lt! define the types here using
XML Schema ? lt/typesgt ltmessagegt lt! XML
messages the web service uses are defined here ?
lt/messagegt ltportTypegt lt! define the input
and output parameters here -? lt/portTypegt
ltbindinggt lt! define the network protocol here
? lt/bindinggt ltservicegt lt! location of the
service ? lt/servicegtlt/definitionsgt
27
Web Service Description (WSDL)
Abstract Description
Concrete Description
28
Big Picture
29
Types Section
  • The type element defines the data types that are
    used by the web service.
  • ltxsdcomplexType name"PERSON"gt ltxsdsequencegt
    ltxsdelement name"firstName
    type"xsdstring"/gt ltxsdelement
    name"lastName" type"xsdstring"/gt ltxsdelement
    name"ageInYears" type"xsdint"/gt
    lt/xsdsequencegt lt/xsdcomplexTypegt

30
Messages Section
  • A message element defines parameters
  • The name of an output message element ends in
    "Response" by convention
  • ltmessage name"Simple.foo"gt ltpart name"arg"
    type"xsdint"/gt lt/messagegt ltmessage
    name"Simple.fooResponse"gt ltpart name"result"
    type"xsdint"/gt lt/messagegt

31
PortTypes Section
  • Defines a web service, the operations that can be
    performed, and the messages that are involved.
  • ltportType name"SimplePortType"gt ltoperation
    name"foo" parameterOrder"arg" gt ltinput
    message"wsdlnsSimple.foo"/gt
    ltoutputmessage"wsdlnsSimple.fooResponse"/gt
    lt/operationgt lt/portTypegt

32
An Example
  • ltmessage name"Simple.foo"gt ltpart
    name"arg" type"xsdint"/gt lt/messagegt ltmessage
    name"Simple.fooResponse"gt ltpart
    name"result" type"xsdint"/gt lt/messagegt
  • ltportType name"SimplePortType"gt
    ltoperation name"foo" parameterOrder"arg" gt
    ltinput message"wsdlnsSimple.foo"/gt
    ltoutput message"wsdlnsSimple.fooResponse"/gt
    lt/operationgt lt/portTypegt
  • The above describes what kind of C/C function
    call?
  • int foo(int arg)

33
The Port Element
  • Each ltportgt element associates a location with a
    ltbindinggt in a one-to-one fashion
  • ltport name"fooSamplePort inding"fooSampleBindin
    g"gt ltsoapaddress location"http//carlos808
    0/fooService/foo.asp"/gt lt/portgt

34
Services Section
  • A collection of related endpoints, where an
    endpoint is defined as a combination of a binding
    and an address
  • ltservice name"FOOSAMPLEService"gt ltport
    name"SimplePort binding"wsdlnsSimpleBinding"gt
    ltsoapaddress location"http//carlos8080/
    FooSample/ FooSample.asp"/gt lt/portgt
    lt/servicegt

35
Namespaces
  • The purpose of namespaces is to avoid naming
    conflicts.
  • Imagine two complimentary web services, named A
    and B, each with an element named foo.
  • Each instance of foo can be referenced as Afoo
    and Bfoo
  • Example "xmlnsxsd" defines a shorthand (xsd)
    for the namespace
  • See http//www.w3.org/2001/XMLSchema.

36
What is UDDI?
  • A project to speed interoperability and adoption
    for web services
  • Standards-based specifications for service
    description and discovery
  • Shared operation of a business registry on the
    web
  • Partnership among industry and business leaders
  • Universal Description, Discovery, and Integration

37
What Problems Do We Solve?
38
UDDI v1 Implementation
39
How UDDI v1 Works
1.
SW companies, standards bodies, and programmers
populate the registry with descriptions of
different types of services
UDDI Business Registry
Segrvice Type Reistrations
40
Registry Data
WhitePages
  • Businesses register public informationabout
    themselves
  • Standards bodies, Programmers, Businesses
    register information about their Service Types

YellowPages
GreenPages
Service Type Registrations
41
Web Services WS-
  • Web Services have a correspondingly collections
    of specifications that represent critical
    features of the distributed operating systems for
    Grids of Simple Services
  • Some 60 active WS- specifications for areas such
    as
  • a. Core Infrastructure Specifications
  • b. Service Discovery
  • c. Security
  • d. Messaging
  • e. Notification
  • f. Workflow and Coordination
  • g. Characteristics
  • h. Metadata and State
  • i. User Interfaces

42
A List of Web Services I
  • a) Core Service Architecture
  • XSD XML Schema (W3C Recommendation) V1.0 February
    1998, V1.1 February 2004
  • WSDL 1.1 Web Services Description Language
    Version 1.1, (W3C note) March 2001
  • WSDL 2.0 Web Services Description Language
    Version 2.0, (W3C under development) March 2004
  • SOAP 1.1 (W3C Note) V1.1 Note May 2000
  • SOAP 1.2 (W3C Recommendation) June 24 2003
  • b) Service Discovery
  • UDDI (Broadly Supported OASIS Standard) V3 August
    2003
  • WS-Discovery Web services Dynamic Discovery
    (Microsoft, BEA, Intel ) February 2004
  • WS-IL Web Services Inspection Language, (IBM,
    Microsoft) November 2001

43
A List of Web Services II
  • c) Security
  • SAML Security Assertion Markup Language (OASIS)
    V1.1 May 2004
  • XACML eXtensible Access Control Markup Language
    (OASIS) V1.0 February 2003
  • WS-Security 2004 Web Services Security SOAP
    Message Security (OASIS) Standard March 2004
  • WS-SecurityPolicy Web Services Security Policy
    (IBM, Microsoft, RSA, Verisign) Draft December
    2002
  • WS-Trust Web Services Trust Language (BEA, IBM,
    Microsoft, RSA, Verisign ) May 2004
  • WS-SecureConversation Web Services Secure
    Conversation Language (BEA, IBM, Microsoft, RSA,
    Verisign ) May 2004
  • WS-Federation Web Services Federation Language
    (BEA, IBM, Microsoft, RSA, Verisign) July 2003

44
A List of Web Services III
  • d) Messaging
  • WS-Addressing Web Services Addressing (BEA, IBM,
    Microsoft) March 2004
  • WS-MessageDelivery Web Services Message Delivery
    (W3C Submission by Oracle, Sun ..) April 2004
  • WS-Routing and Referral SOAP Routing Protocol
    (Microsoft) October 2001
  • WS-RM Web Services Reliable Messaging (BEA, IBM,
    Microsoft, Tibco) v0.992 March 2004
  • WS-Reliability Web Services Reliable Messaging
    (OASIS Web Services Reliable Messaging TC) March
    2004
  • SOAP MOTM SOAP Message Transmission Optimization
    Mechanism (W3C) June 2004
  • e) Notification
  • WS-Eventing Web Services Eventing (BEA,
    Microsoft, TIBCO) January 2004
  • WS-Notification Framework for Web Services
    Notification with WS-Topics, WS-BaseNotification,
    and WS-BrokeredNotification (OASIS) OASIS Web
    Services Notification TC Set up March 2004
  • JMS Java Message Service V1.1 March 2002

45
A List of Web Services IV
  • f) Coordination and Workflow, Transactions and
    Contextualization
  • WS-CAF Web Services Composite Application
    Framework including WS-CTX, WS-CF and WS-TXM
    below (OASIS Web Services Composite Application
    Framework TC) July 2003
  • WS-CTX Web Services Context (OASIS Web Services
    Composite Application Framework TC) V1.0 July
    2003
  • WS-CF Web Services Coordination Framework (OASIS
    Web Services Composite Application Framework TC)
    V1.0 July 2003
  • WS-TXM Web Services Transaction Management (OASIS
    Web Services Composite Application Framework TC)
    V1.0 July 2003
  • WS-Coordination Web Services Coordination (BEA,
    IBM, Microsoft) September 2003
  • WS-AtomicTransaction Web Services Atomic
    Transaction (BEA, IBM, Microsoft) September 2003
  • WS-BusinessActivity Web Services Business
    Activity Framework (BEA, IBM, Microsoft) January
    2004
  • BTP Business Transaction Protocol (OASIS) May
    2002 with V1.0.9.1 May 2004
  • BPEL Business Process Execution Language for Web
    Services (OASIS) V1.1 May 2003
  • WS-Choreography (W3C) V1.0 Working Draft April
    2004
  • WSCI (W3C) Web Service Choreography Interface
    V1.0 (W3C Note from BEA, Intalio, SAP, Sun,
    Yahoo)
  • WSCL Web Services Conversation Language (W3C
    Note) HP March 2002

46
A List of Web Services V
  • h) Metadata and State
  • RDF Resource Description Framework (W3C) Set of
    recommendations expanded from original February
    1999 standard
  • DAMLOIL combining DAML (Darpa Agent Markup
    Language) and OIL (Ontology Inference Layer)
    (W3C) Note December 2001
  • OWL Web Ontology Language (W3C) Recommendation
    February 2004
  • WS-DistributedManagement Web Services Distributed
    Management Framework with MUWS and MOWS below
    (OASIS)
  • WSDM-MUWS Web Services Distributed Management
    Management Using Web Services (OASIS) V0.5
    Committee Draft April 2004
  • WSDM-MOWS Web Services Distributed Management
    Management of Web Services (OASIS) V0.5 Committee
    Draft April 2004
  • WS-MetadataExchange Web Services Metadata
    Exchange (BEA,IBM, Microsoft, SAP) March 2004
  • WS-RF Web Services Resource Framework including
    WS-ResourceProperties, WS-ResourceLifetime,
    WS-RenewableReferences, WS-ServiceGroup, and
    WS-BaseFaults (OASIS) Oasis TC set up April 2004
    and V1.1 Framework March 2004
  • ASAP Asynchronous Service Access Protocol (OASIS)
    with V1.0 working draft G June 2004
  • WS-GAF Web Service Grid Application Framework
    (Arjuna, Newcastle University) August 2003

47
A List of Web Services VI
  • g) General Service Characteristics
  • WS-Policy Web Services Policy Framework (BEA,
    IBM, Microsoft, SAP) May 2003
  • WS-PolicyAssertions Web Services Policy
    Assertions Language (BEA, IBM, Microsoft, SAP)
    May 2003
  • WS-Agreement Web Services Agreement Specification
    (GGF under development) May 2004
  • i) User Interfaces
  • WSRP Web Services for Remote Portlets (OASIS)
    OASIS Standard August 2003
  • JSR168 JSR-000168 Portlet Specification for Java
    binding (Java Community Process) October 2003

48
A List of Web Services VII
  • j) Recent Updates
  • WS-Eventing important update of this notification
    specification with IBM, Sun and others joining
    Microsoft et al. as authors
  • WS-Enumeration supporting the splitting of a
    single entity (file or stream) into multiple
    messages
  • WS-Transfer supporting the creation, update (by
    get or put) or deletion of a resource
  • WS-Management competes with WS-DM to provide a
    Web Service to manage resources
  • WS-PolicyAttachment describes how to associate
    policies with UDDI and Endpoints and how to
    integrate with WSDL
  • WS-DAI is a Web Service of the OGSA-DAI Grid
    linkage with databases
  • WS-CIM is a Web Service rendering from DMTF
    (Distributed Management Task Force) of the
    industry standard CIM (Common Information Model)
    of metadata for computer devices
  • The WS- implicitly define an architecture

49
Grid Services
  • Abstract
  • In both e-business and e-science, we often need
    to integrate services across distributed,
    heterogeneous, dynamic "virtual organizations
    formed from the disparate resources within a
    single enterprise and/or via external resource
    sharing relationships. This integration can be
    technically challenging due to the need to
    achieve various qualities of service in
    heterogeneous environments.

50
Why the Grid?(1) Revolution in Science
  • Pre-Internet
  • Theorize /or experiment, aloneor in small
    teams publish paper
  • Post-Internet
  • Construct and mine large databases of
    observational or simulation data
  • Develop simulations analyses
  • Access specialized devices remotely
  • Exchange information within distributed
    multidisciplinary teams

51
Why the Grid?(2) Revolution in Business
  • Pre-Internet
  • Central data processing facility
  • Post-Internet
  • Enterprise computing is highly distributed,
    heterogeneous, inter-enterprise (B2B)
  • Business processes increasingly computing-
    data-rich
  • Outsourcing becomes feasible gt service
    providers of various sorts

52
New OpportunitiesDemand New Technology
  • Resource sharing coordinated problem solving
    in dynamic, multi-institutional virtual
    organizations

When the network is as fast as the computer's
internal links, the machine disintegrates across
the net into a set of special purpose appliances
(George Gilder)
53
Grid Communities Technologies
  • Yesterday
  • Small, static communities, primarily in science
  • Focus on sharing of computing resources
  • Globus Toolkit as technology base
  • Today
  • Larger communities in science early industry
  • Focused on sharing of data and computing
  • Open Grid Services Architecture emerging
  • Tomorrow
  • Large, dynamic, diverse communities that share a
    wide variety of services, resources, data
  • New issues Trust, distributed RM, knowledge

54
Grid Computing Benefits
  • Exploit Underutilized resources
  • CPU Scavenging, Hotspot leveling
  • Resource Balancing
  • Virtualize resources across an enterprise
  • Data Grids, Compute Grids
  • Enable collaboration for virtual organizations

55
NSF TeraGrid
  • NCSA, SDSC, Argonne, Caltech
  • Unprecedented capability
  • 13.6 trillion flop/s
  • 600 terabytes of data
  • 40 gigabits per second
  • Accessible to thousandsof scientists working
    onadvanced research
  • www.teragrid.org

56
(No Transcript)
57
Data Grids for High Energy Physics
  • Enable international community of 1000s to access
    analyze petabytes of data
  • Harness computing storage worldwide
  • Virtual data conceptsmanage programs, data,
    workflow
  • Distributed system management

58
NEESgrid Earthquake Engineering Collaboratory
U.Nevada Reno
www.neesgrid.org
59
Industrial Perspective on GridsA Wide Range of
Applications
Unique by Industry with Common Characteristics
Grid Services Market Opportunity 2005
Sources IDC, 2000 and Bear Stearns- Internet 3.0
- 5/01 Analysis by SAI
60
Open Grid Services Architecture
  • Service-oriented architecture
  • Key to virtualization, discovery, composition,
    local-remote transparency
  • Leverage industry standards
  • Internet, Web services
  • Distributed service management
  • A component model for Web services
  • A framework for the definition of composable,
    interoperable services

The Physiology of the Grid An Open Grid
Services Architecture for Distributed Systems
Integration, Foster, Kesselman, Nick, Tuecke,
2002
61
Grid and Web Services Standards
Grid
GT1
GT2
OGSI
WS-I Compliant Technology Stack
Have been converging
WSRF
BPEL
WS-
WSDL, SOAP
XML
HTTP
Web
Convergence of Core Technology Standards allows
Common base for Business and Technology Services
62
Open Grid Services Architecture
63
(No Transcript)
64
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com