Middleware
A camada média da arquitetura cliente/servidor de três camadas pode ser implementada de várias formas, monitores de processamento de transações, servidores de mensagens, etc. Onde cada uma apresenta vantagens e limitações. A esta tecnologia que implementa os vários tipos de camadas médias, juntamente com suas funcionalidades, dá-se o nome de middleware.
Middleware é um software de conectividade que consiste em um conjunto de serviços que permite a interação, através da rede, de múltiplos processos executando em uma ou mais máquinas. Middleware é essencial para migrar aplicações de mainframe para aplicações cliente/servidor provendo comunicação através de plataformas heterogêneas .
Esse software de conectividade se localiza entre a aplicação e o sistema operacional, com middleware. O middleware oferece serviços de propósito geral que se situam entre a aplicação e a plataforma utilizada que seriam sistema operacional mais hardware. Os serviços oferecidos pelo middleware devem :
• Ir ao encontro de uma grande variedade de aplicações, por exemplo:
Ser capaz de traduzir ou facilitar a adição de mensagens de vários formatos para serem utilizados em diversas aplicações.
• Ser implementados de forma a possibilitar a execução em plataformas distintas. Por exemplo, em sistemas distribuídos as aplicações localizadas em diferentes plataformas podem usar o serviço middleware para se comunicar e/ou trocar dados, aumentando assim a interoperabilidade.
• Possibilitar serem acessados remotamente por outros serviços ou aplicações.
• Suportar, idealmente, um protocolo padrão, por exemplo, Transmission Control Protocol/Internet Protocol (TCP/IP) ou International Standards Organization (ISO) Open System Interconnect (OSI).
• Suportar uma Application Programming Interface (API) padrão. Os serviços devem ser transparentes com respeito a API, isto é, eles devem ser acessados via APIs sem necessidade de modificá-las.
Uma API (interface de programação de uma