Search icone
Permuta de Trabalhos Acadêmicos
Garantias
Leia mais sobre as nossas garantias.

Programação distribuída

Informações sobre o autor

 
Nível
Avançado
Estudo seguido
informática
Faculdade
UCG

Informações do trabalho

Lazaro A.
Data de Publicação
Idioma
português
Formato
.ppt
Tipo
estudo
Número de páginas
89 diapositivo
Nível
avançado
Consultado
79 vez(es)
Validado por
Comitê Facilitaja
0 Avaliaçao cliente
0
escrever um comentário
  1. Middleware
    1. Middleware: Níveis de Abstração
    2. Middleware: Abstrações de Comunicação
    3. Middleware: Domínios de Aplicação
  2. Próximos Capítulos
  3. RPC
    1. RPC: Idéia Básica
    2. RPC: Marshalling e Unmarshalling
    3. RPC: Stubs
    4. RPC: Arquitetura Interna
  4. Sistemas de Middleware Orientados por Objetos
  5. Java RMI
    1. Java RMI: Exemplo de Aplicação
    2. Java RMI: Passagem de Parâmetros
    3. Sistema de Chat em Java RMI
  6. CORBA
  7. Arquitetura OMA
  8. ORB: Object Request Broker
  9. OMA: Resumo
  10. IIOP: Internet Inter-ORB Protocol
  11. IDL: Interface Definition Language
  12. IDL: Passagem de Parâmetros
  13. IDL: Interface Definition Language
  14. Desenvolvimento de Aplicações em CORBA: Visão Geral
  15. CORBA: Arquitetura Interna
  16. CORBA: Vantagens e Desvantagens
  17. Middleware: Conceitos Avançados
  18. CORBA: Recursos Extras
  19. Reflexão Computacional
  20. Reflexão em Java
  21. Classes Proxy Dinâmicas
  22. Reflexão em CORBA
  23. Sincronização de Requisições
  24. Chamadas Assíncronas
  25. Chamadas Assíncronas - Implementação
  26. Interceptadores
  27. Interceptadores em Java RMI
  28. Interceptadores em CORBA
  29. Nível de Confiabilidade em Chamadas Remotas
  30. Serviço de Nomes em CORBA
  31. Serviço de Nomes em Java RMI
  32. Trader: Serviço de Negociação
  33. CORBA Trader
  34. Jini
  35. Coleta de Lixo Distribuída
  36. Críticas a Transparência
  37. Computação Local x Remota
  38. Transparência em CORBA e RMI
  39. Conclusão
  40. Bibliografia

Desenvolver uma aplicação distribuída é mais difícil do que desenvolver uma aplicação centralizada Problemas típicos: comunicação, heterogeneidade, falhas, concorrência, segurança, escalabilidade etc Middleware: infra-estrutura de software que fica entre o sistema operacional e uma aplicação distribuída. Objetivo: tornar mais simples e produtivo o desenvolvimento de uma aplicação distribuída Idéia: oferecer abstrações/recursos de mais alto nível que tornem transparente ao programador detalhes de programação em redes Fazer com que programação distribuída seja o mais semelhante a programação centralizada Wolfgang Emmerich. Software engineering and middleware: a roadmap. ICSE 2000: 117-129. (obrigatório) Rick Schantz,Douglas Schmidt. Middleware for Distributed Systems. Encyclopedia of Computer Science and Engineering, 2005.

[...] Por exemplo, X.25 (padronização da camada de rede) CORBA inclui dois subpadrões importantes: IIOP e IDL IIOP: Internet Inter-ORB Protocol Protocolo, baseado em TCP/IP, para troca de mensagens entre ORBs de diferentes fabricantes Objetivo: interoperabilidade IDL: Interface Definition Language Linguagem para definir a interface de um objeto remoto Especifica a assinatura das operações que serão implementadas por um objeto remoto Linguagem declarativa (sem código) Tipos pré-definidos: long, short, float, double, char, boolean, enum Tipos estruturados: struct, union, string, sequence Tratamento de exceções Modos de passagem de parâmetros: in, out e in out Herança múltipla de interfaces Idéia: especificar interface em uma linguagem neutra IDL: Interface Definition Language Exemplo: typedef sequence extrato; struct Data { short dia, mes,ano; interface conta { float obterSaldo extrato obterExtrato (in Data inicio, in Data fim); . [...]


[...] Middleware: Conceitos Avançados Marco Túlio de Oliveira Valente Programa de Pós-Graduação em Informática Coleta de Lixo Distribuída Suponha as seguintes interfaces remotas: interface Srv extends Remote { Msg getMsg(); } interface Msg extends Remote { . } Suponha um servidor com um objeto remoto que implementa Srv: Msg getMsg() { return new MsgImpl(); } Suponha ainda uma classe remota MsgImpl, que implementa Msg Código do cliente: void foo() { Srv "referência para objeto remoto que implementa Srv" Msg msg; for (int i<100; msg= s.getMsd(); cria 100 objetos remotos no servidor } Quando estes objetos são destruídos? [...]


[...] Deseja executar o método remoto task() sobre cada um dos elementos de um vetor. Primeira solução: RMI (um for com chamadas síncronas) Segunda solução: ARMI (for com chamadas assíncronas) Chamadas Assíncronas - Exemplo Chamadas Assíncronas - Implementação Interceptadores Motivação: sistemas como CORBA são muito fechados Programadores possuem poucas oportunidades de intervir no funcionamento interno do sistema Interceptadores: permitem ?agregar? comportamento extra ao fluxo normal de processamento de uma chamada remota de métodos Interceptadores são usados para implementar requisitos funcionais de forma não-intrusiva e transparente Interceptadores são meta-objetos que permitem acessar/interferir no fluxo normal de execução de uma chamada remota São, portanto, um recurso de meta-programação Interceptadores Interceptadores podem ser usados para: Autenticação/autorização: usuário possui permissão para realizar esta chamada remota? [...]

Estes documentos podem interessar a você

Arquitetura de software

 Engenharia e tecnologias   |  Informática   |  Monografia   |  07/08/2007   |  BR   |   .doc   |   23 páginas

Mais Vendidos informática

Projeto Integrado Multidisciplinar

 Engenharia e tecnologias   |  Informática   |  Estudo   |  04/06/2013   |  BR   |   .doc   |   7 páginas