Middleware Basics - PowerPoint PPT Presentation

1 / 14
About This Presentation
Title:

Middleware Basics

Description:

... (MOM) offers a mailbox abstraction, asynchronous mode, generally queuing ... offers an object abstraction, synchronous/ asynchronous client/server ... – PowerPoint PPT presentation

Number of Views:72
Avg rating:3.0/5.0
Slides: 15
Provided by: drsyedimt
Category:

less

Transcript and Presenter's Notes

Title: Middleware Basics


1
Middleware Basics
  • http//wwwis.win.tue.nl/houben/isa/isa-ls-middlew
    are.pdf
  • http//www.granneman.com/downloads/databaseovervie
    w.pdf
  • Any type of software that facilitates
    communication between two or more software
    systems
  • A general term for any programming that serves
    to glue together or mediate between two separate
    and often existing programs
  • An extension of the operating system which
    provides a transparent communication layer to
    applications
  • A software layer that serves to shield the
    application heterogeneity of the underlying
    computer platforms and networks

2
Middleware Scenario
  • Web server passes the request for data from a
    database to the middleware
  • Middleware renders it into a form meaningful as a
    query to the database
  • Database responds with data to the middleware
  • Middleware formats into html and sends it to the
    Web server
  • Web server sends the page to the user making the
    request

3
Middleware Models
  • Point-to-Point Middleware Linking one
    application to another, sending a procedure call
    or message without engaging in middle-tier
    processing in terms of logic or mapping
  • Many-to-many Linking each application to many
    other applications making use of integration
    servers and other variations

4
Communication Modes
  • Synchronous client waits for the result,
    coupling the applications tightly, and making
    unnecessarily wasteful use of the communication
    medium. A somewhat better alternative would be
    deferred Synchronous mode where the client asks
    for result by polling. Either way the nature of
    communication is direct
  • Asynchronous Client send the request and
    continues with its work. The server initiates
    contact with the client when ready with results
  • Queued In most cases the messages for the
    server may be queued and processed one-by-one in
    some order of priority

5
(Continued )
  • Publish/Subscribe sending request to a pub/sub
    engine or broker. The broker then forwards it to
    interested (subscribing) applications. Allows
    for anonymity, flexibility, and generality among
    participating applications
  • Fire/Forget broadcasting messages to multiple
    applications JAXM (Java API for XML Messaging)
    supports synchronous/asynchronous calls with
    acknowledgements and the fire/forget messaging
    option

6
Middleware Categories
  • Transaction Oriented offers a tuple abstraction
    (SQL) and distributed transaction processing
  • Examples
  • IBM CICS, Encina
  • BEA Tuxedo
  • Microsoft Transaction Server
  • LDAP - Lightweight Directory Access Protocol, is
    an Internet protocol that email programs use to
    look up contact information from a server, such
    as ClickMail Central Directory, a simple protocol
    to access remote directories, and not
    transactions, LDAP servers index all the data in
    their entries, and "filters" may be used to
    select just the person or group you want, and
    return just the information you want

7
(Continued )
  • Message-oriented Middleware (MOM) offers a
    mailbox abstraction, asynchronous mode, generally
    queuing software, not requiring direct
    connection, there are some implementations that
    rely on a broadcast or multicast messaging system
  • Examples
  • Microsoft Message Queue (MQ)
  • TIBCO Rendezvous
  • IBM Websphere MQ (MQSeries MQSeries)
  • Sonic Software's SonicMQ
  • Java Message Queue
  • Coridan MantaRay (http//www.mantamq.org) (open
    source)
  • ActiveMQ (open source)
  • XmlBlaster (http//www.xmlblaster.org) an
    open-source Java MOM implementation

8
(Continued )
  • Procedural Middleware (RPC) offers a procedural
    abstraction, synchronous client/server
    interaction, RPC allows server components to be
    defined using an IDL, compiling client server
    stubs, suffer from scalability problems
  • Examples
  • Sun Open Network Computing (ONC)
  • Unix/Linux/DCE RPC
  • OSF DCE
  • Netbula JavaRPC
  • PowerRPC

9
(Continued )
  • Object-Oriented Middleware offers an object
    abstraction, synchronous/ asynchronous
    client/server interaction, Like RPC (Remote
    Procedure Call), OOM offers synchronous, typed
    communication between components of a distributed
    program, system-wide through the Object Directory
    (Interface Trader, Yellow Pages)
  • Examples
  • OMG CORBA
  • Sun Java/RMI
  • SOAP (RPC on top of HTTP, XML RPC)
  • Microsoft COM/DCOM
  • Sun Enterprise Java Beans
  • .NET (Virtual Machine like Java)

10
(Continued ..)
  • Transaction Monitors runtime software that
    monitors a transaction as it passes from one
    stage in a process to another, ensuring that the
    transaction processes completely or, if an error
    occurs, to take appropriate actions, TP monitors
    are especially important in three-tier
    architectures that employ load balancing because
    a transaction may be forwarded to any of several
    servers based on their availability, TP monitor
    technology provides the distributed client/server
    environment the capacity to efficiently and
    reliably develop, run, and manage transaction
    applications.

11
(continued )
  • Application Servers generally operate as web
    enabled middleware, processing actions from web
    enabled applications, providing application logic
    processing and sharing, connecting to backend
    resources

12
(continued )
  • Integration Servers can account for differences
    in cooperating application semantics and
    platforms, transforming message schemas and alter
    the contents as needed

13
Other Middleware Examples
  • Closed Source MS ASP, Macromedia Cold Fusion
  • Closed/Open UserLand Frontier/Manila
  • Open Source PHP/MySQl, JSP, Perl, Python, Zope
    (built with Python)

14
PHP Scenario
  • A web browser issues a request for a file with
    .php extension
  • Web Server takes this file and sends it as an
    input request to the PHP parser
  • The PHP parser finds PHP specific code in the
    file, processes it, and places the output back in
    the file in place of the PHP code
  • The new output file is sent back to the web
    server
  • Web server sends the file to the requesting
    browser
  • The browser displays the output
Write a Comment
User Comments (0)
About PowerShow.com