Title: Middleware Introduction Chevron Uses Middleware to link 300
1Middleware
2Introduction
- Chevron Uses Middleware to link 3000 Desk Top
Systems and World Wide Browsers to geographical,
Seismic and historical drilling information
stored in database across a diverse range of
server Technologies. - South-West Airlines, the fourth largest domestic
carrier, uses a Middleware Flight Management
system that guarantees delivery of Critical data
to meet the airlines stringent requirements for
efficiency. - 50 of all IT Budgets go towards making
applications talk to one another.
3Lets Learn a Little More about what Middleware
is --------------
4- Introduction
- - Deals about you what you will learn here.
- What is Middleware?
- -Covers the basic concepts of introduces you
to the different types of Middleware - Focus on Technology.
- - Explore the different types of Middleware
Technologies Available - Case Study
- - Some real world case studies of on the
applications of different types of middleware
5- What is Middleware?
- - a software that is designed to help
build large - scale distributed systems.
- - a piece of software that sits between
systems. - Strictly speaking in Technical Terms
- Middleware is transport software that
is used to move information from one program to
one or more other programs, shielding the
developer from dependencies on communication
protocols, operating systems, and hardware
platforms. -
- Middleware allows your previously
isolated applications to talk to one another. -
6- Your Main Frame Legacy Inventory Management
System can be integrated with your Accounting
System .. which can be integrated with the sales
support system which can be integrated with new
applications as the business grows. - This is depicted pictorially in the next slide.
7Inventory
Payroll
Accounting
E-Commerce
MIDDLE WARE
New Applications
Web Site
Sales
8How did Middleware evolve ???
- Merging of Companies and acquisition of another
companies is common now-a-days. Then the systems
have to integrate with other companies legacy
systems.That is where middleware comes into
help. - Chronological Evolution
- Batch Processing
- Database Technology
- Email
- Home Grown Solutions
9Modern Middleware
- 1988 Remote Procedure Calls
- Peer to peer Networking
- 1994 - Mom Arrives
- 1998 - Real-time Enterprise
- - Publish/Subscribe
- - Push
- - Distributed
Objects
10Periodic events
- 1988-With the advent of Remote Procedure calls
and peer-to-peer Networking, the first
commercially available Middleware has arrived. - 1994-Robust, Message-Oriented Middleware became
available. Early adapters use Message Queuing. - 1998- Real-time Enterprise. New Technologies like
Publish/Subscribe, Push, and Distributed Objects
keep pace with needs of the ebusiness era.
11Today Middleware covers a number of products and
functions.These are the five categories which are
described below
- 1. Home Grown(Middleware developed by
in-house teams which focuses on companies
specific needs) - 2. RPC/ORB(Middleware that focuses on
synchronous distributed applications) - 3. Pub/Sub(Middleware that focuses on Real
Time communications based on messaging) - 4. Message Queuing(Middleware that focuses
on reliable communications based on messaging) - 5. TP Monitors(Middleware that focuses on
coordination of processes and highly reliable
transactions)
12Scalability, Performance, and Reliability are
three measurable qualities of middleware.
Measurable Qualities of Middleware
Legend 1 - Indicates less important. 4
Indicates most important. Homegrowns
strength depends on builders focus and
abilities.
13What is HomeGrown Technology
- - Homegrown middleware is a term used to describe
custom distributed application solutions built
from ground-up. - - It is Developed Using a variety of programming
tools and low level networking protocols. As
these are customized solutions there components
can be compromised of many different
technologies. -
- - How a customized Homegrown solution works is
completely up to the team that builds it. A team
of system architects should have to investigate
the needs and decide on several critical factors.
Some of these are. -
14 Critical Factors involved
- Manner of Communication(Synchronous, a
synchronous). - Network Protocols(UDP, TCP, IPX).
- Types of Tools to use.(C,C, Java)
- Types of information(messages, remote calls).
- Network or server performance issues(Bandwidth,
max clients) -
15Wrap UP
- Homegrown usually takes a team of highly skilled
technical personal familiar with networking and
client server architectures. - The cost of building a Homegrown solution are
usually much higher than commercial products with
longer project Timelines. - Homegrown solutions are best used in situations
where needs cannot be met by the current
commercial software. - The main advantage to use a Homegrown
architecture is that it allows for complete
customization of the system. Some issues like
time, cost and maintenance exists.
16Let' us evaluate ourselves what we understood
about Home Grown Solutions???????
17- Home Grown Middleware is a term used to describe
- Commercial Software
- Email Systems
- Custom Distributed application Soutions
- 2)A Home Grown Solution is best used when
- a standard communication infrastructure is needed
- A low cost solution is needed.
- The needs for a middleware solution cannot be met
by a commercial software. - 3)The main advantage of Home Grown Solution is
- Simplicity
- It allows for complete customization of system
- It is faster than other methods.
- 4) The costs of building a Homegrown middleware
solution are generally ___________ than
commercial products. - a)Much Higher than b)About same as c)Much Lower
than
18RPC/ORB
- Middleware that focuses on synchronized
distributed applications
- Distributed applications allow a program on one
machine to leverage processign power, memory, or
storage on another machine. - The basic difference between a RPC and ORB is
that RPC uses standard programming procedure
methods and ORB uses object oriented
methodologies. - With RPC/ORB a Client application can
transparently invoke a service on a server which
can be on same machine or across a network. -
19The RPC/ORB mechanism
- Intercepts the call.
- Finds requested procedure/Object.
- Passes parameters.
- Invokes its methods.
- Returns results to the clients
20- RPC/ORB is best used in situations when
applications use a request/reply model of
communicating. -
- Some of the example of this are
- A Help desk support application.
- A web application that front ends a legacy
application. -
- The fundamental ORB technologies supported now
today are CORBA (www.omg.org), DCOM
(www.microsoft.com)and RMI(www.java.sun.com).
21ProsPower of Distributed Computing.Reduces
application maintenance by centralizing key
functions.Takes advantage of Object oriented
features.Can web enable legacy applications.
Pros and Cons of RPC/ORB
- Cons
- Scaling applications to a large user base is
problematic. - Complexity in architecture requires sophisticated
developers. - Interoperability between platforms is a big
issue. - Difficult to debug and administer.
22Publish/Subscribe
- Works by passing information in a message from
one program to one or more other programs
asynchronously. - This is like sending an email opposed to making a
phone call. - The basic components that make a PUB/SUB system
are messages, a publishing service, and
subscribers.
23What is a Publishing Service The publishing
service is where messages are sent and routed to
subscribing applications. A Publishing service
is similar to a radio broadcast, where messages
will be published or broadcast to all
applications that have registered(subscribed) for
certain types of messages(called subjects)
PUB/SUB is best used in situations with
applications that send time sensitive
information, speak to multiple applications at
once, and/or exist in a very volatile network
environment.
24Communication in Pub/Sub
- A message is a piece of information that is sent
between two or more applications .The publishing
service acts as a message distribution center
that receives and sends messages to registered
subscribers. - Applications using PUB/SUB communicate
asynchronously. In asynchronous communications, a
sending application sends a message to a
receiving application without waiting for a
reply. - The key advantage to asynchronous communications
is that sending applications can continue on with
other tasks once the message has been sent. - What makes the asynchronous communications work
in a PUB/SUB system is the publishing service.
25How messages are sent in a Pub/Sub
- The publishing service is where messages are
sent and routed to subscribing applications. - A publishing service is similar to a radio
broadcast, where messages will be published or
broadcast to all applications that have
registered(subscribed) for certain types of
messages(called subjects). - Messages are sent to a centralized publisher
instead of each individual subscriber, the
subscription list can be modified on the fly,
providing a highly flexible communication system
that can run across different networks and
systems. - This one-to-one many-to-many broadcasting
makes PUB/SUB a high performance scalable
architecture. - PUB/SUB systems can also transform messages(
act as an interpreter) enabling applications
never designed to work together to communicate. -
26 Some examples of applications using PUB/SUB
are
- Real time quoting service that must provide stock
information to many applications at once. - Meteorological services that must transfer
information to different weather systems all over
the world. - Centralized network alerting systems that must
communicate with distributed nodes that change
significantly over time.
27Companies Promoting Middleware
- Business Integration Group(www.biggroup.org)
- Open Group(www.opengroup.org)
- Vendors Support
- IBM(www.ibm.com)
- Talarian(www.talarian.com)
- Tibco(www.tibco.com)
- Vitria(www.vitria.com)
28Message Queuing
- The two basic components of a MQ system are
Message and Queue. - A message is a piece of information that is sent
between two or more applications. The Queue is a
container that can hold and distribute these
messages.
29Communication in Message Queuing
- Applications using Message Queuing communicate
asynchronously . - The key advantage in Asynchronous communications
is that sending applications can continue on with
other tasks once the message has been sent.What
makes Asynchronous communications work in a MQ
system is a Queue. - The Message Queue is where messages are sent and
held until they are picked up by a receiving
application. - A Message Queue is similar to a Post Office Box,
where messages will wait until asked for. - As Messages are not lost it is highly reliable.
- Applications that communicate via a MQ are called
Loosely Coupled applications because they
never speak directly to each other .Each can
continue to function when the other is busy or
Even Off-Line. - The Queue will manage messages so that they are
not lost, or not delivered out of sequence or
duplicated until the application is ready to
retrieve them.
30Some examples of these types of applications are
- Sales automation applications that must
communicate with a disconnected mobile sales
force. - Back end transaction applications where
connection or service disruptions must not result
in transaction loss. - New Web order entry applications that must
communicate with one or more legacy systems to
process an order.
31Pros and Cons of Message Queuing
- Pros
- When we need highly reliable communications
across unreliable networks. - Need asynchronous communications for mobile
workforces. - Need emerging and legacy applications to speak to
one another. - Cons
- Initial setup and administration can be very
complex. - Asynchronous communications between applications
can be slow if Queue is overloaded. - Many to Many Communications can be difficult to
implement.
32TP Monitors (Transaction Processing Monitors)
- They are not used for a program-to-program
communication.Rather they provide a complete
environment for transaction applications that
access relational databases. - They tend to be mission-critical applications
that require a rapid response 100 of the time
and tight controls over the security and
integrity of database. - TP Monitors should be considered when
transactions need to be coordinated and
synchronized over multiple databases. - TP Monitors tend to be heavyweight and expensive,
and they require a great deal of expertise to
implement properly.
33Well let us again go through what we learnt
about the previous technologies in Middleware
34Quiz on RPC/ORB
- 1)RPC and ORB are technologies used for
- a)Managing operating systems
- b)Building distributed applications
- c)Stand alone applications
- 2)RPC/ORB is best used in situations when
applications use the_______ model of
communicating. - a)Request/Reply b) Message c)Callback/Event
- 3)Three major ORB technologies now being
supported are - a)CORBA,DCOM and RMI b)CORBA, SQL and HTTP
- c)ICP,SQL and DCOM.
- 4)Some advantages of using an RPC/ORB
architecture are - a)Simple to use, Distributed computing power,and
Reduced application maintenance. - b)Interoperability guaranteed, Code reuse,
Distributed computing power - c)Code reuse, Distributed computing power,and
Reduced application maintenance.
35PUB/SUB
- 1)PUB/SUB is a technology used for
- a)Voice Communications
- b)Building distributed applications
- c)Magazine processing
- 2) PUB/SUB is best used in ____ model of
communicating - a)Request/Reply b) Asynchronous c)Send/Resend
- 3)The three components that make up a PUB/SUB
system are - a)Queues, Publications service and ISPs.
- b)Messages, Publications service and subscribers
- c)PDAs Publications service and subscribers
- 4) Some advantages using PUB/SUB are
- a)Scalability, Real-Time, Asynchronous
communications. - b)Standards based, Asynchronous communications
and easy to use. - c)Simple to use, Scalability, and Real-Time
communications.
36Message Queues and TP Monitors
- The components that make up a MQ system are
- Queues and broad band access
- ISPs and Clients. C) Messages and
Queues - 2) Some advantages to using a MQ architecture
are - Reliability, Application Integration and Async
Communications. - Simple to use, Application Integration and and
ALL MQ is a standard - Async Communications, Reliability and Simple to
use. - 3) A TP Monitor is technology used for
- Message Queuing. B)Message Broadcasting
- Building OLTP applications.
- A TP Monitor is best used when ________ is
needed. - A general communication infrastructure is needed
- Transaction Coordinator c)Asynchronous Messaging
37Case Study
38- A Large bank for eg. will have mainframe based
core accounting systems, Foreign exchange(FX) and
treasury packages , interface to payment networks
and clearing systems, branch systems, call
centers and customer centers such as web
banking.Typically these will include mainframe
legacy systems, two-tier client server
applications, and a variety of off the shelf
packages. -
-
- Complexities
- Systems incompatible
- Data Formats differ
- Connectivity issues complex.
-
- What a middleware does here??
- Simplifies access to multiple databases.
- Integrate existing systems.
- Integrates any platforms- Windows ,UNIX, etc.
39(No Transcript)
40Integrated payments using a Middleware Hub
- The Middleware rationalizes access to the
services as shown in the figure.This provides for
each application to have only one interface to
the middleware Hub. - The middleware uses the existing interfaces of
the systems because of its communications
connectivity, interface dialogue, and data
presentation required.These allows reuse of
existing interfaces. - To make new services available, only the the
interface to the middleware needs to be
considered. New services can be connected to the
hub and integrated as required to other systems. - Using the hub as the system integrator, all
services can be provided to all corporate clients.
41(No Transcript)
42(No Transcript)
43- Case Schedule, pick-up and deliver packages.
Locate shipments at any point along their journey - About the Company
- A subsidiary of CNF Transportation Inc., Emery
Worldwide is a 2.3 billion diversified company
with seven decades of experience in the
transportation industry. - The company provides a variety of services, from
global freight transportation to customs
brokerage to worldwide logistics management
44Technicalities in Detail
- The information system that enables Emery to
schedule, pick-up and deliver packages, called
EMCON 2000, comprises detailed customer data and
more than ten front-end applications. - Emery relies on EMCON 2000 to enable its customer
service staff to locate shipments at any point
along their journey. The system also supports the
handheld computers used by Emery's delivery
personnel to confirm deliveries and is even
accessible to Emery's customers over the
Internet.
45Software Used
- Emery relies on IBM MQSeries message queuing
middleware to ensure that its worldwide
operations run smoothly. - SoftwareIBM MQSeries for OS/390 Version
2.1 IBM MQSeries for Solaris(tm) Version
5.0 IBM MQSeries for Windows NT Version
5.0 IBM DB2 for OS/390
46- Data for EMCOM 2000 is stored on a single IBM
S/390 Parallel Enterprise Server running IBM DB2
for OS/390 Version 5.0. - The individual applications of EMCON 2000 run on
two middle-tier servers running Sun Solaris
Operating Environment. - MQSeries for OS/390 and MQSeries for Solaris are
used to feed data from the back-end database to
the applications on the middle-tier servers and
update the database with new information.
47- Emery had run the applications on a variety of
systems, including IBM AIX and Microsoft
Windows NT servers. - The cross-platform flexibility of MQSeries
allowed Emery to leverage its investment in
technology when it ported the applications to
Solaris Operating Environment. Embedding MQSeries
APIs within the application development tools
used to build EMCON 2000, - Emery was able to regenerate new code for its
target platform instantly from its existing
MQSeries code for the Windows NT and AIX
platforms. "We were able to port our system to
MQSeries for Solaris without rewriting any code,
saving us multiple man-years in development
costs,"
48References
- http//www-4.ibm.com/software/ts/ mqseries/
- http//www.tibco.com/products/tours/index.html
- http//talarian.com/industry/middleware/whitepaper
.pdf. - http//www.openvms.compaq.com/openvms/whitepapers/
middleware/isgmidware.html
49Application Areas For Middleware
- EBusiness
- EPortals
- EAI(Enterprise Application Integration)
- EDI(Enterprise Data Interchange)