Application Integration Technology - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

Application Integration Technology

Description:

Middleware provides a mechanism that allows one entity (application or database) ... changes to the source and target systems become unmanageable and inflexible. ... – PowerPoint PPT presentation

Number of Views:46
Avg rating:3.0/5.0
Slides: 27
Provided by: laura459
Category:

less

Transcript and Presenter's Notes

Title: Application Integration Technology


1
Application Integration Technology
  • IT 490

2
Middleware Basics
  • Middleware provides a mechanism that allows one
    entity (application or database) to communicate
    with another entity or entities.
  • Middleware is the best hope for moving
    information between applications and databases.
    Unfortunately, traditional middleware as it
    exists today (Remote Procedure Calls RPCs,
    Message Oriented Middleware-MOM) can provide
    connections between applications, but in order to
    facilitate the use of middleware, changes to the
    source and target systems become unmanageable and
    inflexible.

3
Middleware Basics
  • New types of middleware came into play, including
    application servers and message brokers.
  • As a definition, middleware is basically any type
    of software that facilitates communications
    between two or more software systems.

4
  • Types of Middleware
  • RPCs ? the oldest type of middleware but they are
    the easiest to understand and use. Basically RPCs
    provide developers with the ability to invoke a
    function within one program and have that
    function actually execute within another program
    or another remote machine

5
  • RPCs are synchronous. They stop the execution of
    the program in order to carry out remote
    procedure calls. Because of this, RPCs are also
    knows as blocking middleware.
  • Because carrying out a remote procedure call
    requires a lot of overhead in the systems, RPCs
    require more bandwidth than any other types of
    middleware.
  • Fig. 7.2 RPCs Local Functions Executing
    on Remote Machines

6
  • The best known type of RPC is Distributed
    Computing Environment (DCE) from Open Software
    Foundation (OSF). It provides a very
    sophisticated distributed RPC mechanism with many
    layers of services (such as security services,
    directory services, and the ability to maintain
    integrity between applications).
  • DCE requires a lot of overhead so the performance
    of such system is very poor.
  • The main RPC advantage is the simplicity of the
    systems and integration. The main disadvantage is
    their requirement for more processing power.
  • RPCs require anywhere from 10,000 to 15,000
    instructions in order to process a remote
    request. All these add to the cost of the
    overhead.

7
  • Message-Oriented ? MOM was created to address
    some shortcomings of RPCs through the use of
    messaging. Traditional MOM is typically queuing
    software, using messages as a mechanism to move
    information from point to point.
  • Because MOM uses the notion of messages to
    communicate between applications, direct coupling
    with the middleware mechanism and the application
    is not required.

8
  • MOM products use an asynchronous paradigm and
    because its decoupled from the application, they
    allow the application to function independently.
  • The asynchronous paradigm is much more convenient
    for developers and users because it does not
    block the application from processing, although
    the model is a bit more complex than the
    synchronous model.

9
  • MOM is able to ensure delivery of a message from
    one application to the next through several
    sophisticated mechanisms, such as message
    persistence.
  • The use of messages is also an advantage because
    messages are small byte-sized units of
    information that move between applications.

10
  • Messages have a schema (structure) and data
    (content).
  • There are two models supported by MOM
  • Point-to-Point
  • Message Queuing (MQ) ? this has several
    advantages over standard RPCs. First of all MQ
    lets each participating program proceed at its
    own pace without interruption from the middleware
    layer. Another benefit to MQ is that the program
    can broadcast the same message to many remote
    programs without waiting for the remote programs
    to be up and running.

11
  • Distributed-Objects ? are also considered
    middleware because they facilitate
    inter-application communications. But at the same
    time they are also mechanisms for applications
    development, providing enabling technology for
    enterprise-wide method sharing.
  • Distributed Objects are really small application
    programs that use standard interfaces and
    protocols to communicate with one another

12
  • There are 2 types of distributed objects on the
    market today CORBA (created by OMG in 1991 is
    more of a standard than a technology) and COM
    (created by Microsoft, is a distributed object
    standard). Just like CORBA, COM provides rules
    for developers when creating COM-enabled
    distributed objects.

13
  • - Database-Oriented ? is any middleware that
    facilitates communications with a database,
    whether from an application or between databases.
    Developers use them as a mechanism to extract
    information from either local or remote
    databases.

14
  • They work with 2 basic database types
  • call-level interface (CLI)
  • at-native database middleware
  • While CLIs provide access to any number of
    databases through a well defined common interface
    and are common APIs that span several types of
    database, they work most typically with
    relational databases (for example Microsofts
    ODBC)
  • Fig. 7.6
    Microsofts OLE DB

15
  • Transaction-Oriented ? (for example TP monitors
    and application servers) do a pretty good job at
    coordinating information movement and method
    sharing between many different resources.
    Typically it creates a tightly coupled EAI
    solution, where messaging solutions are more
    cohesive in nature. In addition, the source and
    target applications will have to be changed to
    take advantage of this transactional middleware.
  • TP Monitors ? are the first generation
    applications servers and a transactional
    middleware product. They provide a location for
    application logic in addition to a mechanism to
    facilitate the communication between 2 or more
    applications
  • TP monitors are based on the premise of a
    transaction ? is a unit of work with a beginning
    and an end. The reasoning is that if application
    logic is encapsulated within a transaction, then
    the transaction either completes or is rolled
    back completely.

16

17
  • An advantage of using transactions is the ability
    to break an application into smaller portions and
    then invoke those transactions to carry out the
    binding of the user or another connected system.
  • TP monitors provide connectors that allow them to
    connect to resources such as databases, other
    applications and queues.
  • TP monitors provide queuing, routing and
    messaging features all of which enable
    distributed application developers to bypass the
    TP monitors transactional features. As a result
    priorities can be assigned to classes of
    messages, letting the higher messages receive
    server resources first.
  • TP monitors real performance value is in their
    load-balancing feature, which allows them to
    respond gracefully to a barrage of transactions.

18
  • Application Servers ? is not new but is the
    fastest growing segment of the middleware
    marketplace and its defined by the many new
    products calling themselves applications
    servers.
  • Most Application Servers are employed as
    Web-enabled middleware, processing transactions
    from web-enabled applications. They also employ
    Java rather than traditional procedural languages
    like C or COBOL (which are common with TP
    monitors)
  • Application Servers are servers that not only
    provide for the sharing and processing of
    application logic, but they also provide
    connections to back-end resources.
  • These resources include databases, ERP
    applications and even traditional mainframe
    applications. They also provide user interface
    development mechanisms.

19

20
  • - Message Brokers ? can facilitate information
    movement between two or more resources (source or
    target applications) and can account for the
    difference in application semantics and
    platforms.
  • Message Brokers can also join many applications
    using common rules and routing engines. They can
    transform the schema and content of the
    information as it flows between various
    applications and databases.

21
  • Middleware Models
  • The Logical Middleware Model ? depicts how the
    information moves throughout the enterprise
    conceptually.
  • The Physical Middleware Model ? depicts how the
    information actually moves and the technology it
    employs.
  • There are a few messaging models we will look at
    in order to understand the physical middleware
    model
  • One-to-One vs Many-to-Many ? Middleware can work
    in a point-to-point as well as many-to many
    configurations
  • 1. Point-to-Point Middleware ? allows one
    application to link to one other application via
    a simple pipe. When communication is desired, the
    two applications communicate via the pipe using a
    procedure call or message (see Fig. 7.10)

22
  • While it is possible at this time to connect
    together more than 2 applications using
    traditional point-to-point middleware, doing so
    will generate a chaos inside the network because
    of the redundant point to point connections

23

24
  • Many-to-Many Middleware ? links multiple
    applications to many other applications. Thats
    why this is the best fit for EAI and is the
    current trend in the EAI world. It is also the
    most powerful logic middleware model in that it
    provides both flexibility and applicability to
    the EAI problem domain.

25
  • 3. Synchronous vs. Asynchronous
  • Asynchronous Middleware moves information between
    one or many applications in an asynchronous
    mode-that is, the middleware software is able to
    decouple itself from the source or target
    applications and the applications are not
    dependent on the other connected applications for
    processing. A major advantage is that the
    middleware will not block the application for
    processing.
  • Synchronous Middleware is tightly coupled to
    applications and the applications are dependent
    on the middleware to process one or more function
    calls at a remote application. As a result the
    calling application must halt processing in order
    to wait for the remote application to respond?
    this is called blocking middleware.

26
  • 4. Connection-Oriented and Connectionless
  • Connection-oriented communications ? two parties
    connect, exchange messages and then disconnect.
    This is a synchronous process usually but
    sometimes can be asynchronous.
  • Connectionless communications ? the calling
    program does not enter into a connection with the
    target process.
Write a Comment
User Comments (0)
About PowerShow.com