Um middleware pode ser visto como uma camada de software intermediria localizada entre o sistema operacional e a aplicao.
Desenvolvimento de Sistemas distribudos mais fcil e gil.
Prof. Adriano Teixeira de Souza Prof. Adriano Teixeira de Souza Requisitos de um Middleware Permitir Comunicao Uso de protocolos de comunicao Marshalling e Unmarshalling IDL para garantir (un)marshalling dos dados
Prof. Adriano Teixeira de Souza Requisitos de um Middleware Permitir Escalabilidade Medida de Capacidade de adaptao Replicao de componentes como soluo Transparncia de acesso Transparncia de localizao Transparncia de migrao Transparncia de replicao
Prof. Adriano Teixeira de Souza Requisitos de um Middleware Lidar com Heterogeneidade No restringe o sistema a uma s tecnologia Permite que componentes legados sejam integrados a novos componentes. Prof. Adriano Teixeira de Souza Servios de Middleware Ciclo de vida Gerenciamento do Ciclo de vida dos objetos Servio de nomes Permite referenciar objetos pelo nome Transao Faz gerenciamento de transaes
Prof. Adriano Teixeira de Souza Servios de Middleware Negcio Permite localizao de servios Segurana Oferece funcionalidades de segurana Tempo Servio de sincronizao de relgios
Prof. Adriano Teixeira de Souza Middleware Transacional Suporte a transaes sncronas Coordena requisies entre clientes e servidores Pode suportar as propriedades ACID (Atomicidade, Consistncia, Isolamento e Durabilidade)
Prof. Adriano Teixeira de Souza Middleware Transacional Vantagens Componentes se mantm consistentes Bastante confivel Boa performance Escalonamento e priorizao de solicitaes
Prof. Adriano Teixeira de Souza Middleware Transacional Desvantagens Ausncia de padronizao para descrever servios Executa numa menor quantidade de plataformas Bloqueios desnecessrios Marshalling e unmarshalling implementadas manualmente
Prof. Adriano Teixeira de Souza Middleware Orientado a Mensagens (MOM) Message queuing Comunicao indireta Assincrona Mensagens enviada para filas Message Passing Comunicao direta Sncrona Destaque para o modelo publish-subscribe
Prof. Adriano Teixeira de Souza Middleware Orientado a Mensagens (MOM) Vantagens Suporta comunicao em grupo de forma atmica Confiabilidade Amplo suporte a protocolos de rede
Prof. Adriano Teixeira de Souza Middleware Orientado a Mensagens (MOM) Desvantagens Escalabilidade e heterogeneidade limitadas Pouca portabilidade por falta de padronizao Uso Aplicaes cuja disponibilidade da rede ou de todos os componentes no seja um problema
Prof. Adriano Teixeira de Souza Prof. Adriano Teixeira de Souza Middleware Orientado a Objetos (MOO) Evoluo dos middlewares procedurais Interao por invocao de mtodos Comunicao tipicamente sncrona IDLs para descrever servios Prof. Adriano Teixeira de Souza Middleware Orientado a Objetos (MOO) Vantagens Grande suporte a heterogeneidade Marshalling e unmarshalling automticos Versatilidade
Prof. Adriano Teixeira de Souza Middleware Orientado a Objetos (MOO) Desvantagens Pouca Escalabilidade Uso Aplicaes que no precisam de grande escalabilidade
Prof. Adriano Teixeira de Souza Prof. Adriano Teixeira de Souza Transacionais Tuxedo (BEA) CICS (IBM) MOM MQSeries (IBM) JMS (Sun) HornetQ (Jboss) MOO CORBA - Common Object Request Broker Architecture (OMG) DCOM - Distributed Component Object Model (Microsoft) RMI - Remote Method Invocation (Java)