Middleware

O que é?

Definição

Software que faz a mediação entre um sistema e as demais aplicações.

Facilita o desenvolvimento

Facilita a execução de aplicações distribuidas

Facilita a comunicação entre infraestruturas e aplicações

Para que?

Transportar informações

Transportar dados

Diferentes protocolos de comunicação

Diferentes plataformas

Diferentes dependências do S.O.

Onde

Protocolos de comunicação

HTTP

FTP

Plataformas

Business intelligence

Dependências do S.O.

Windows

Linux

Exemplo

Sistema de resfriamento

Lâmpadas

Você

Um middleware é capaz de realizar essa interação.

Televisão

Pipoqueira

Benefícios

Independe da linguagem de programação

Exemplo: Java

Pode ser utilizado para construir um framework

Exemplo: Mensageria

Suporte a comunicação

Sincrona

Assincrona

Categorias

Middleware Procedural

Linguagem de descrição de interface

Modelo Cliente / Servidor

Chamada de procedimento remoto

Foco em comunicação sincrona

Middleware Orientado a Objeto

Evolução do Middleware Procedural

Comunicação entre objetos distribuídos e heterogêneos

Middleware Orientado a Mensagem

Comunicação entre componentes de um sistema distribuído

Foco é a comunicação assíncrona.

Middleware Transacional (MT)

Monitor de Processamento de Transações.

Apoia a coordenação e sincronização para a execução de transações

Desafios

Ausência de padrões

Cada um define o seu

Suporte focado á interopabilidade e banco de dados

Banco de dados: conexão e manuseamento de dados

Interoperabilidade: comunicação transparente entre dois sistemas(similares ou não)

Serviços

Comuns

Bando de dados: persistência

Transação: troca de dados

Específicos

Redes sociais

Comunicação

Específicos-> Comuns

Especifico depende do comum