Inventory of Distributed Computing Concepts and Web services - PowerPoint PPT Presentation

About This Presentation
Title:

Inventory of Distributed Computing Concepts and Web services

Description:

J2EE Application Programming Model for Three-tier Applications. Presentation ... a client and a server results in the execution of an activity (ot transaction) ... – PowerPoint PPT presentation

Number of Views:61
Avg rating:3.0/5.0
Slides: 21
Provided by: binarama
Learn more at: https://cse.buffalo.edu
Category:

less

Transcript and Presenter's Notes

Title: Inventory of Distributed Computing Concepts and Web services


1
Inventory of Distributed Computing Concepts and
Web services
  • Chapter 3

2
Motivation
  • Earlier attempts to replace existing systems
    failed
  • Distributed computing environment (DCE) emphasis
    -- distribution
  • Common object request broker architecture
    (CORBA) emphasis -- interoperability
  • Uniqueness of SOA is that it leverages existing
    middleware and distributed computing concepts
  • RPC, distributed objects, message-oriented
    middleware (MOM), application coupling, etc.

3
Technical Layers
Core
Assets
Participant A
Participant C
Participant B
Business Logic
Technology Independent Interface Description
Technology Independent Interface Description
Technology Independent Interface Description
XML
ORB
Middleware Mapping
Technology Adapters
Middleware Buses
Communication facilities
CORBA
XML Web services
4
Technical Layer 2 Chapter 3
Core
Assets
Participant A
Participant C
Participant B
Business Logic
Technology Independent Interface Description
Technology Independent Interface Description
Technology Independent Interface Description
XML
ORB
Middleware Mapping
Technology Adapters
Middleware Buses
Communication facilities
CORBA
XML Web services
5
Technical Layer 1 Ch. 4 -7
Core
Assets
Participant A
Participant C
Participant B
Business Logic
Technology Independent Interface Description
Technology Independent Interface Description
Technology Independent Interface Description
XML
ORB
Middleware Mapping
Technology Adapters
Middleware Buses
Communication facilities
CORBA
XML Web services
6
Communication Network
Application
Application
Network Protocol Stack
Network Protocol Stack
  • A communication middleware framework isolates the
    application developers from the details of the
    network protocol.

7
Communication Middleware
Application
Application
Middleware
Middleware
Network Protocol Stack
Network Protocol Stack
8
Remote procedure call (RPC)
Client Application
Server Application
Procedure call
Execute call
RPC Stub code
RPC stub code
RPC library/runtime
RPC library/runtime
Network Protocol Stack
Network Protocol Stack
RPC stubs and runtime enable location
transparency, encapsulate RPC communication
infrastructure and provide a procedure call
interface.
9
Distributed Objects
Client Application
Server Application
invoke method
Execute method
Client proxies
Server skeletons
ORB
ORB
Network Protocol Stack
Network Protocol Stack
ORBs enable client applications to remotely
instantiate, locate, invoke methods and Delete
server objects Java RMI, Microsofts DCOM CORBA
is meant to be platform independent.
10
Separation of Interface and Implementation
  • An important contribution of CORBA is IDL or
    Interface Definition Language.
  • Interface and implementation can be in two
    different languages.
  • Interface abstracts and protects details (trade
    secrets) from client
  • Interface offers a means of expressing design
    without worrying about implementation.

11
J2EE Application Programming Model for Web-based
applications
Business Logic
Web Service
Web client
12
J2EE Application Programming Model for Three-tier
Applications
13
Interface vs Payload Semantics
  • Typically interaction between a client and a
    server results in the execution of an activity
    (ot transaction)
  • Request needs to be specified by the request.
  • Interface semantics Requested activity can be
    encoded in the operation signature in the
    servers interface or
  • Payload semantics It can be embedded in the
    message itself

14
Interface Semantics
Process1
Process2
getCustomer()
retrieveCustomerData()
returnResult()
Semantics of the activity is explicitly stated in
the message/method call
15
Payload Semantics
Envelop With message
Process 1
Process 2
Requested transaction/activity is embedded in the
message Details of the activity not explicit the
semantics are embedded in the message
16
Payload Semantics
onMessage()
17
Payload semantics is generic
  • String transferMoney (amt decimal, accTo
    String)
  • String executeService (message String)

18
Document-centric Messages
  • With emergence of self-descriptive data
    structures such as XML, document-centric has
    become popular
  • Semantically rich messages where operation name,
    its parameters, return type are self descriptive.
  • SOAP (Simple Object Access Protocol) over XML is
    an example (look at the example in p.45 of your
    text)
  • Lets look at XML, SOAP, WS evolution. WS?SOA

19
Tight vs. Loose Coupling
  • An important characteristics of an SOA that is a
    loosely coupled system.
  • On the technology front this is driven by dynamic
    discovery and binding enabled by Universal
    Description, Discovery and Integration (UDDI)
  • On the business front loose coupling addresses
    the growing need for companies to be flexible and
    agile with respect changes in their own processes
    and those of their partners (read p.46)
  • How does loose coupling help in improving
    agility, flexibility and performance?

20
Tight vs. Loose coupling
Write a Comment
User Comments (0)
About PowerShow.com