What is Middleware?
Middleware is Software that provides a link between separate software applications. It is a layer that lies between the operating system and applications.
Use of Middleware:
- Provide interaction with another service or application.
- Filter data to make them friendly usable.
- Make an application independent from network services.
- Make an application reliable and always available.
- Add complementary attributes like semantics.
Types of Middleware:
- Communication Middleware : Communication Middleware is used to connect one application with another application. For Example connecting one application with another application using telnet.
- Message Oriented Middleware: It supports the receiving and sending of messages over distributed applications. It enables applications to be disbursed over various platforms. It makes the process of creating software applications across many operating systems. It makes network protocols less complicated. It holds many advantages over middleware alternatives and is one of the most widely used types of middleware.
- Object Oriented Middleware : Object Oriented Middleware is also known as an object request broker. It provides the facility to send objects and request services via an object oriented system. In short, it manages the communication between objects.
- Remote Procedure Call (RPC) Middleware : It provides the facility to calls procedures on remote systems and is used to perform synchronous or asynchronous interactions between applications or systems. It is usually utilized within a software application.
- Database Middleware: It provides direct access to databases and direct interaction with databases, There are many database gateways and connectivity options and you simply have to see what will best work for your necessary solution. This is the most general and commonly known type of middleware. This includes SQL database software.
- Transaction Middleware : This type of middleware includes applications like transaction processing monitors. It also encompasses web application servers, These types of middleware are becoming more and more common today.
- Embedded Middleware : This type of middleware allows the facility of communication and integration of services with an interface of software or firmware. It acts as a liaison between embedded applications and the real time operating system,
- Content-Centric Middleware: This type of middleware allows you to abstract specific content without worry of how it is obtained. This is done through a simple provide / consume abstraction. It is similar to publish / subscribe middleware, which is another type of this software that is often used as a part of web based applications.
What is Gateway ?
Gateways are required when the networks between the device and the middleware having different set of protocol.
For Example: an IVR Gateway is used to interface voice with a computer. WAP Gateway is used to access internet on mobile phones