Client/server is dead. That’s the buzz now that newer Internet-based technologies are flourishing. But those new technologies are merely the natural evolution of earlier approaches, implemented with newer, more open protocols and designed to provide greater scalability, manageability, and diversity.
Middleware is computer software that connects software components or applications. It is used most often to support complex, distributed applications. It includes web servers, application servers, content management systems, and similar tools that support application development and delivery. Middleware is especially integral to modern information technology based on XML, SOAP, Web services, and service-oriented architecture.
Types of middleware
- Remote Procedure Call (RPCs) — Client makes calls to procedures running on remote systems. Can be asynchronous or synchronous.
- Message Oriented Middleware (MOM) — Messages sent to the client are collected and stored until they are acted upon, while the client continues with other processing.
- Object Request Broker (ORB) — This type of middleware makes it possible for applications to send objects and request services in an object-oriented system.
- SQL-oriented Data Access — middleware between applications and database servers.
- Other sources include these additional classifications:
- Transaction processing (TP) monitors — Provides tools and an environment for developing and deploying distributed applications.
- Application servers — software installed on a computer to facilitate the serving (running) of other applications.
- Enterprise Service Bus — An abstraction layer on top of an Enterprise Messaging System.