|
Choosing middleware
Middleware is the link that helps applications inter-operate.
Heres a look at this silent performer as well as at the applications that
keep a business spinning on its axis
In
a perfect world, applications would talk seamlessly without colliding into barriers
created by hardware and software. But as we do not live in Utopia, middleware
is required if applications are to inter-operate as seamlessly as possible.
Middleware is a generic term thats used to define software which knits
applications together. It is especially important if we have to get even a little
closer to concepts such as Systems Oriented Architecture.
Making the right connections
From the earliest days of software, programmers have been forced to write connectors
for different systems that may exist in a company so that these can communicate
with each other.
The emergence of OLTP and other high-performance applications led to the development
of commercial middleware components. These applications depended on communicating
with many others to generate results. The result was that a new generation of
middleware was spawned with the goal of streamlining and accelerating connections
between front-end and back-end applications.
Need-driven demand
Middleware is an important part of enterprise application
integration. Modern businesses require smooth exchange of information between
applications such as ERP and SCM, or databases and customer-facing Websites.
Cross-application communication helps businesses benefit from consolidated information
resources. Middleware makes its presence felt in various forms. A commonly-used
classification is to divide middleware into the following types. Most middleware
platforms use a combination of:
- Data management services (database and file system
middleware)
- Communication services (remote procedure call and
messaging middleware)
- Distribution services (location, time and security
services)
- Object management services (by using object request
brokers)
- Application co-operation services (transaction-processing
monitors, e-mail, etc.)
- Presentation services (user interfaces, printing
and multimedia middleware)
- System management services (configuration, change,
operations, problem and performance management services).
A silent entry
Most businesses use middleware. Common components used are those in application
servers, database access systems, enterprise applications and Web servers.
Commercial middleware provides software connectors that make it possible for
most popular applications to interoperate. A common technique used for cross-application
communication is a message bus architecture which is also known
as an Enterprise Service Bus.
An application connects to the ESB and through it to another
application. The links are usually achieved using XML and Web Services or interfaces
developed on Suns J2EE or Microsoft .NET framework. The technology is
scalable and it helps avoid disorganised communication flows that can be difficult
to manage as an organisation grows. It also eases application integration and
management.
Middleware vendors are including enterprise technology newcomersthe likes
of grid computingin their latest products. However, these efforts are
nascent and will take time to mature.
The middle path
Using proper middleware can be beneficial for Indian SMBs. The principal reason
is the recent adoption of business automation by these players.
This is the right time for SMBs that are just starting on the journey to adopt
proper application frameworks to employ SOA at some level. Designing a robust
middleware strategy can go a long way in this direction. With such an approach,
they will be able to bypass many of the mistakes that their large business counterparts
made.
In an attempt to automate business using IT, many large Indian enterprises ended
up with far too many interconnected applications and unmanageable dependencies.
In short, it will take a while for these organisations to sort out the chaos
that their application infrastructure (or lack of it) is in at present. SMBs
would do well to learn from the mistakes of their large cousins and create application
infrastructures using properly-designed and manageable communication channels.
For this, selecting and implementing the correct middleware is essential.
Choosing middleware
So how should an SMB go about choosing middleware? The first pre-requisite is
to define application requirements considering parameters such as interconnections
required, applicable standards (like XML) and middleware technologies that can
be used.
It is also important to keep in mind future growth plans during this sizing
exercise. The middleware should be designed so that it can accommodate these
changes.
Once the required features have been identified, it is time to choose a middleware
solution having these capabilities. The solution should be scalable, provide
access to legacy applications, support the required protocols, be remotely manageable
and have scripting controls.
Development and middleware management tools are usually available with most
middleware platforms. These ought to be enough for most development work, but
consider third-party development tools if you find a platform lacking in the
functionality you need.
Serving applications
Application servers are a form of middleware that are widely
used. These act as an interface between users (internal or external) and a companys
back-end applications.
An application server is normally used in applications that
are expected to deliver high performancefor example, transaction-processing.
Redundancy, monitors for high availability, high-performance distributed application
services and support for database access are available in most application servers.
This is because most of these servers are used for high-end requirements. Hence
it is common to find application servers powering e-business. These servers
are used for deploying business logic processing, automating low-level core
processing, middleware services, application development and providing pre-built
components.
Most of the common application servers are based on the J2EE framework and act
as an interface between Web browsers (users) and back-end applications. Application
servers are popular as they provide an easy, efficient, cost-effective and reliable
way for doing this. Load balancing is one of the features that have helped ensure
the popularity of application servers with enterprises. This helps reduce the
processing load in multi-tier applications.
Most applications servers are available as standalone products
or as part of middleware platform solutions. Free-to-use, open source applications
servers are also available.
| Vendor |
Product |
Component |
Description |
BEA
Tel: 080-51256825/
51150826
Fax: 080-51152933
www.bea.com |
WebLogic Platform |
WebLogic Portal |
Simplifies the production and management of custom-fit portals |
| |
|
Liquid Data for Weblogic |
Allows all information to be viewed, accessed and acted upon as if it
came from a single source |
| |
|
Weblogic Integration |
Facilitates information-sharing between employees, customers, partners
and constituents |
| |
|
Jrockit |
Java Virtual Machine (JVM) optimised to run on Intel platforms |
| |
|
Weblogic Workshop |
Java development environment that enables IT to visually build and assemble
enterprise-scale Web applications, Web services, JSPs, portals, EJBs and
process workflows |
| |
|
WebLogic Server |
For building SOAs. The Diablo beta is compliant with J2EE 1.4 specs |
Borland
Tel: +91 080 5115 4611
www.borland.com |
Borland Enterprise Server AppServer Edition |
|
Application servers for J2EE platform applications and Web services |
| |
Borland Enterprise Server VisiBroker Edition |
|
For developing and deploying distributed applications |
IBM
Tel: 160-0443333, Fax: 91-80-5268153
www.ibm.com |
WebSphere Business Integration Adapters |
|
Exchanges information between systems |
| IBM |
WebSphere Business Integration Message Broker for Multiplatforms |
|
Transforms in-flight information |
| IBM |
WebSphere Business Integration Message Broker for z/OS |
|
Manages information flows between independent systems housed in separate
organisational areas |
| IBM |
WebSphere Business Integration Message Broker with Rules and Formatter
Extension for Multiplatform support |
|
Transforms in-flight information |
| IBM |
WebSphere Business Integration Message Broker with Rules and Formatter
Extension for z/OS |
|
Transforms in-flight information |
Microsoft
Tel: +91-124-5158000/ 2567000 Fax: +91-124-5158888
www.microsoft.com |
BizTalk Server |
|
Helps customers and integrates systems, employees and trading partners
through business processes enabling them to automate and orchestrate interactions
in an automated manner |
Oracle
Tel: +91 124 2549250/2549260 Fax: +91 124 2549270/2549280
www.oracle.com |
Business Integrated solution |
Oracle Integration |
Platform for data integration, enterprise application integration, B2B
collaboration, composite applications and Web services |
| |
|
Oracle BPEL Process Manager |
Co-ordinates and executes Web services and business processes in a standards-based
manner |
| |
|
Oracle Data Hub |
Synchronises information centrally from all systems throughout the enterprise |
| Oracle |
Oracle Application Server 10g |
|
Solution for developing, integrating and deploying enterprise applications,
portals and Websites, all based on a J2EE server, business integration and
business intelligence suites, and portal software |
Sun
Tel: 1 600 338 072
www.sun.com |
System Application Server |
|
Develops and delivers serverside Java applications and Web services |
TIBCO
Tel: 020-4029470
www.tibco.com |
TIBCO BusinessWorks |
|
Provides integration technology in a solution that manages the lifecycle
of integration projects |
| TIBCO |
TIBCO BusinessWorks SmartMapper |
|
Enables companies to create an enterprise-wide repository of data relationships
|
|