Sei sulla pagina 1di 33

Sistemas Distribudos Middleware Tipos de Middleware

Principais Middlewares
Estudo de Caso

Concluses

Sistemas Distribudos so...


Vantagens
Disponibilidade Escalabilidade Tolerncia a falhas Custo benefcio Mais fontes de falhas Complexidade Heterogeneidade Segurana

Desvantagens

Transparncia
Local Acesso Falha Tecnologia Concorrncia

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.

Requisitos de um Middleware

Permitir Comunicao
Uso de protocolos de comunicao

Marshalling e Unmarshalling
IDL para garantir (un)marshalling dos dados

Requisitos de um Middleware

Confiana na execuo de requisies


Melhor esforo
Sem garantias

Pelo menos uma


Potencialmente mais de uma

No mximo uma
S uma vez

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

Requisitos de um Middleware

Lidar com Heterogeneidade


No restringe o sistema a uma s tecnologia

Permite que componentes legados sejam


integrados a novos componentes.

Servios de Middleware
Ciclo de vida
Gerenciamento do Ciclo de vida dos objetos

Servio de nomes
Permite referenciar objetos pelo nome

Relacionamento
Cria associaes dinamicamente entre objetos

Transao
Faz gerenciamento de transaes

Servios de Middleware
Negcio
Permite localizao de servios

Segurana
Oferece funcionalidades de segurana

Tempo
Servio de sincronizao de relgios

Evento
Registra interesse de componentes por eventos

Middleware Transacional
Suporte a transaes sncronas Coordena requisies entre clientes e servidores Pode suportar as propriedades ACID

Middleware Transacional

Vantagens
Componentes se mantm consistentes

Bastante confivel
Boa performance Escalonamento e priorizao de solicitaes

Middleware Transacional

Desvantagens
Ausncia de padronizao para descrever servios

Executa numa menor quantidade de plataformas


Bloqueios desnecessrios Marshalling e unmarshalling implementadas manualmente

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

Middleware Orientado a Mensagens (MOM)

Vantagens
Suporta comunicao em grupo de forma atmica

Confiabilidade
Amplo suporte a protocolos de rede

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

Middleware Orientado a Objetos (MOO)


Evoluo dos middlewares procedurais Interao por invocao de mtodos Comunicao tipicamente sncrona IDLs para descrever servios

Middleware Orientado a Objetos (MOO)

Vantagens
Grande suporte a heterogeneidade

Marshalling e unmarshalling automticos


Versatilidade

Middleware Orientado a Objetos (MOO)

Desvantagens
Pouca Escalabilidade

Uso
Aplicaes que no precisam de grande escalabilidade

Transacionais

MOM MOO

Tuxedo (BEA) CICS (IBM) Encina (Transarc) MQSeries (IBM) JMS (Sun)
CORBA (OMG) COM (Microsoft) RMI

Especificado pela OMG Especializao do Object Management Architecture (OMA)

Transforma modelos abstratos de objetos em


formas concretas

Interface Definition Language (IDL)


Linguagem declarativa Define interfaces de objetos com independncia de linguagem Separa a interface da implementao de um objeto Permite a herana de interfaces

Language Mappings
Gera o Stub e Skeleton Mapeia tipos da IDL para tipo da linguagem alvo Language Mapping extremamente dependente das linguagens de programao utilizadas.

Object Request Broker


o componente mais importante de CORBA Transmite invocao de operaes do cliente para o servidor Trata de todas as tarefas associadas invocao de um mtodo

Object Request Broker


Lida com todas as heterogeneidades do ambiente
Localidade Linguagem de programao

Sistema operacional
Hardware Meios de comunicao

Adaptadores de Invocao
Usados indiretamente pelo cliente Separados do ORB

Adaptadores de Objetos
Fornece um ambiente para instanciar objetos e passar requisies (ciclo de vida)

Tambm separados do ORB

Middlewares objetivam resolver a maioria das complexidades inseridas pelo uso de vrios computadores

Criam um ambiente de desenvolvimento de


aplicaes distribudas de mais alto nvel Permitem reuso de componentes

Potrebbero piacerti anche