Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Sistemas Distribuídos - Comunicação Distribuída – Middleware

6,647 views

Published on

Published in: Technology, Education

Sistemas Distribuídos - Comunicação Distribuída – Middleware

  1. 1. Comunicação Distribuída – Middleware Prof. Adriano Teixeira de Souza
  2. 2.  “Um middleware pode ser visto como uma camada de software intermediária localizada entre o sistema operacional e a aplicação.” Desenvolvimento de Sistemas distribuídos mais fácil e ágil. Prof. Adriano Teixeira de Souza
  3. 3. Prof. Adriano Teixeira de Souza
  4. 4. Requisitos de um Middleware Permitir Comunicação ◦ Uso de protocolos de comunicação ◦ Marshalling e Unmarshalling ◦ IDL para garantir (un)marshalling dos dados Prof. Adriano Teixeira de Souza
  5. 5. Requisitos de um Middleware Permitir Escalabilidade ◦ Medida de Capacidade de adaptação ◦ Replicação de componentes como solução  Transparência de acesso  Transparência de localização  Transparência de migração  Transparência de replicação Prof. Adriano Teixeira de Souza
  6. 6. Requisitos de um Middleware Lidar com Heterogeneidade ◦ Não restringe o sistema a uma só tecnologia ◦ Permite que componentes legados sejam integrados a novos componentes. Prof. Adriano Teixeira de Souza
  7. 7.  Serviços de Middleware ◦ Ciclo de vida  Gerenciamento do Ciclo de vida dos objetos ◦ Serviço de nomes  Permite referenciar objetos pelo nome ◦ Transação  Faz gerenciamento de transações Prof. Adriano Teixeira de Souza
  8. 8.  Serviços de Middleware ◦ Negócio  Permite localização de serviços ◦ Segurança  Oferece funcionalidades de segurança ◦ Tempo  Serviço de sincronização de relógios Prof. Adriano Teixeira de Souza
  9. 9.  Middleware Transacional ◦ Suporte a transações síncronas ◦ Coordena requisições entre clientes e servidores ◦ Pode suportar as propriedades ACID (Atomicidade, Consistência, Isolamento e Durabilidade) Prof. Adriano Teixeira de Souza
  10. 10. Middleware Transacional Vantagens ◦ Componentes se mantêm consistentes ◦ Bastante confiável ◦ Boa performance ◦ Escalonamento e priorização de solicitações Prof. Adriano Teixeira de Souza
  11. 11. Middleware Transacional Desvantagens ◦ Ausência de padronização para descrever serviços ◦ Executa numa menor quantidade de plataformas ◦ Bloqueios desnecessários ◦ Marshalling e unmarshalling implementadas manualmente Prof. Adriano Teixeira de Souza
  12. 12.  Middleware Orientado a Mensagens (MOM) ◦ Message queuing  Comunicação indireta  Assincrona  Mensagens enviada para filas ◦ Message Passing  Comunicação direta  Síncrona  Destaque para o modelo publish-subscribe Prof. Adriano Teixeira de Souza
  13. 13. Middleware Orientado a Mensagens (MOM) Vantagens ◦ Suporta comunicação em grupo de forma atômica ◦ Confiabilidade ◦ Amplo suporte a protocolos de rede Prof. Adriano Teixeira de Souza
  14. 14. Middleware Orientado a Mensagens (MOM) Desvantagens ◦ Escalabilidade e heterogeneidade limitadas ◦ Pouca portabilidade por falta de padronização Uso ◦ Aplicações cuja disponibilidade da rede ou de todos os componentes não seja um problema Prof. Adriano Teixeira de Souza
  15. 15. Prof. Adriano Teixeira de Souza
  16. 16.  Middleware Orientado a Objetos (MOO) ◦ Evolução dos middlewares procedurais ◦ Interação por invocação de métodos ◦ Comunicação tipicamente síncrona ◦ IDLs para descrever serviços Prof. Adriano Teixeira de Souza
  17. 17. Middleware Orientado a Objetos (MOO) Vantagens ◦ Grande suporte a heterogeneidade ◦ Marshalling e unmarshalling automáticos ◦ Versatilidade Prof. Adriano Teixeira de Souza
  18. 18. Middleware Orientado a Objetos (MOO) Desvantagens ◦ Pouca Escalabilidade Uso ◦ Aplicações que não precisam de grande escalabilidade Prof. Adriano Teixeira de Souza
  19. 19. Prof. Adriano Teixeira de Souza
  20. 20.  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) Prof. Adriano Teixeira de Souza

×