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