Middleware Technologies

Rashmi Shehana
2 min readDec 30, 2019

--

Middleware is the software that connects network-based requests generated by a client to the back-end data the client is requesting. It is a general term for software that serves to “glue together” separate, often complex and already existing programs.

Middleware Application Programming interfaces provide a more functional set of capabilities than the OS and network services provide on its own.

There are several kinds of Middlewares.

  1. RPCs (Remote Procedure Call) Middleware
  2. MOM (Message Oriented Middleware)
  3. Database Middleware
  4. Transaction Processing Monitors
  5. Message Brokers

RPCs (Remote Procedure Call) Middleware

RPC is a Client/Server mechanism that allows the program to be distributed across multiple programs.RPC reduces the complexity of the system that spans multiple operating systems and network protocols by hiding OS and network interface details from the programmer.

Most RPC implementations use a synchronous protocol to communicate between client and server.

MOM (Message Oriented Middleware)

Message Oriented Middleware is a concept that involves the passing of data between applications using a communication channel that carries self-contained units of information (messages). In a MOM-based communication environment, messages are usually sent and received asynchronously.

Database-Oriented Middleware

Database-Oriented Middleware is a generic term used to refer to software infrastructure that supports,

(i) Functionality, such as interoperability between software components, or distributed transaction execution,

(ii) Improved database service, such as performance scaling or fault tolerance of a database back-end in a larger system, or

(iii) Adaptations to workloads e.g., through the use of adaptive queuing middleware or of a scheduler component for adaptive reconfiguration of a database back-end.

The evolution of middleware

From 2000 and until approximately 2010, middleware software was synonymous with the concept of an application server. However, as cloud computing increases in popularity and microservices replace more monolithic SOA-based systems, middleware is changing.

--

--

Rashmi Shehana

Computer Science Undergraduate, University of Colombo School of Computing