1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)

Slides:



Advertisements
Apresentações semelhantes
Sistemas Distribuídos
Advertisements

Sistemas Distribuídos Baseados em Objetos
Introdução aos Sistemas Distribuídos
Programa de Pós-Graduação Lato Sensu MBA em Gestão de Software
Sistemas Distribuídos
RMI-IIOP.
Modelos de Comunicação em Sistemas Distribuídos
RPC Remote Procedure Call
Arquiteturas de Sistemas Distribuídos: Modelos de Comunicação
Comunicação Distribuída
Computação Distribuída
Interação Cliente Servidor
Objetos Distribuídos e Invocação Remota
Desenvolvimento de Aplicações Distribuídas
Sistemas Distribuídos
Sistemas Distribuídos
1 Arquitetura CORBA Repositório de Implementação Repositório de Interface cliente programa cliente proxy ORB Core ou invocação dinâmica servidor ORB Core.
Comunicação Entre Objetos Distribuídos
1 Sistemas Distribuídos - SDI Caracterização de Sistemas Distribuídos. Introdução. Exemplos de Sistemas Distribuídos. Desafios.
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
Comunicação Inter-Processos
PROGRAMAÇÃO DISTRIBUÍDA EM JAVA Verão/2001
Objetos Distribuídos para WEB Prof. Paulo Fernando da Silva FURB – Universidade Regional de Blumenau Pós-Graduação em Desenvolvimento WEB.
Sistemas Distribuídos
Introdução à Programação Distribuída em Java
Middleware e Sistemas Distribuídos
1 Modelos de Sistemas Distribuídos. Introdução - Dificuldades e ameaças para SD. Grande variação na utilização de SD )carga de trabalho e requerimentos.
Arquitetura CORBA e Objetos Distribuídos
Tópicos em redes e sistemas distribuídos B Carlos Oberdan Rolim Ciência da Computação.
Sistemas Distribuídos
Tópicos em redes e sistemas distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Tópicos de Sistemas de Informação A
Redes Aula 7 Professor: Marcelo Maia.
Chamada Remota de Procedimentos
Marcela Bezerra da Silva Cin - UFPE
Java Avançado Luiz Carlos d´Oleron SJCP Java Sockets.
Sistemas Distribuídos
Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 07.
Remote Method Invocation RMI
Concorrência e Java RMI
Objetos Distribuídos e invocação remota
Sistemas Distribuídos
Mole: Um Sistema de Agentes Móveis Baseado em Java Curso de Ciência da Computação Departamento de Informática Disciplina de Tópicos Especiais em Computação.
Universidade da Beira Interior Fiabilidade de Sistemas Informáticos Nuno Magarreiro n.º
Sistemas Distribuídos Introdução. Conceito Coleção de múltiplos processos que executam sobre uma coleção de processadores autônomos interligados em uma.
Tecgraf PUC-Rio maio de 2011 Principais conceitos de CORBA.
TMV Gestão de Redes e de Sistemas Distribuídos ???? Sumário  Arquitectura de Gestão SNMP  Arquitectura de Gestão OSI/TMN  Novas Arquitecturas.
Concorrência e thread Petrônio Júnior(pglj) Márcio Neves(mmn2)
RMI x C# Remote Emilena Specht – 1113/01/9 2004/01
SISTEMAS OPERACIONAIS I
CORBA Apresentação do Padrão CORBA Maurício Maron Mendes Ramiro Pereira de Magalhães
Java RMI João Gabriel (jggxm).
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
RMI - JAVA.
Elementos de um Sistema de Agentes Móveis Agentes e Places Comportamento de Agentes Comunicação Padronização OMG/MASIF.
Comunicação.
Objetos Distribuídos para WEB Prof. Paulo Fernando da Silva FURB – Universidade Regional de Blumenau Pós-Graduação em Desenvolvimento WEB.
Java – Remote Method Invocation (RMI)
JR: Flexible Distributed Programming in an Extended Java Elmário Gomes Dutra Jr. Gustavo Romano.
Sistemas Distribuídos
Modelos de Comunicação em Sistemas Distribuídos
Modelos de Comunicação em Sistemas Distribuídos
Conceitos do Cliente Funcionamento Básico do Cliente Como Clientes acessam e usam Objetos Distribúidos.
Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Passagens de Mensagens Prof. Dr. Norian Marranghello
Sistemas Distribuídos Prof. Marcus Rodrigues
Leandro Clementino Almeida.  Anos 50 - Sistemas Operacionais tipo Lote:  Aumentar a capacidade de processamento de programas  Usuário ia ao computador.
Protocolos de Comunicação e Passagem de Mensagens
SOCKET - É um canal de comunicação entre processos que estabelece uma conexão entre eles na forma de cliente-servidor. Por meio de sockets, os computadores.
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos
Transcrição da apresentação:

1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)

2 Características para Comunicação Inter-Processos via RMI. RMI é a extensão do modelo de invocação de método local, ou seja, invocação de método remoto. -> Middleware:. Transparência de Localização: O objeto que faz a invocação não diz se o objeto é local ou remoto.. Protocolos de Comunicação: São independentes dos protocolos da camada de transporte. Ver protocolo request-reply seção 4.4 pg. 145 (Coulouris 2001).. Sistemas Operacionais: As abstrações de alto nível do middleware são independentes de SO.. Uso de várias linguagens de programação

3 Interfaces. Organização de programas como conjuntos de módulos que se comunicam. Para controlar as possíveis interações entre módulos uma interface é definida para cada módulo. Permite que a implementação do módulo mude, mantendo-se a mesma interface.

4 Interfaces em Sistemas Distribuídos. Difere da interface entre módulos locais pois o outro módulo comunicante encontra-se em um espaço de endereçamento diferente.. Interface de Serviço: Uso em RPC. Interface Remota: Especifica os métodos de um objeto que ficam disponíveis para serem invocados por outros objetos residentes em espaços de endereçamento diferentes.. Interface Definition Language (IDL): São projetadas para definir interfaces (remotas inclusive) que permitam que objetos implementados em diferentes linguagens invoquem-se uns aos outros.

5 Comunicação entre Objetos Distribuídos. O modelo de objetos.. Objetos Distribuídos.. O modelo de Objetos Distribuídos.

6 Modelo de Objetos. Programa orientado a objetos como uma coleção de objetos interagindo. Um objeto se comunica com outro através da invocação de método, passando argumentos e recebendo resultados.. Referências de Objetos: Objetos podem ser acessados através de referências de objetos. A variável que diz manipular um objeto na verdade manipula uma referência a este objeto. Assim para invocar um método em um objeto, é necessário informar a referência do objeto, o nome do método e juntamente os argumentos de tal método.. Interfaces: Uma interface disponibiliza a assinatura de um conjunto de métodos (isto é, os tipos dos argumentos, valores de retorno e exceções), sem a implementação de tais métodos. (Em java uma classe pode implementar várias interfaces)

7 Modelo de Objetos. Ações: Em um programa orientado a objetos é a invocação de um método em algum objeto. Isso pode incluir argumentos. O objeto receptor da invocação, executa o método e retorna o controle a quem invocou. Consequências: - O estado do receptor pode mudar, - Outra invocação pode ser feita. Exceções: Disponibilizam um modo claro de tratar erros sem complicação do código.. Coleta de Lixo: Liberação do espaço ocupado pelos objetos quando eles não são mais necessários.

8 Objetos Distribuídos. Particionamento de um programa orientado a objetos onde os objetos ocupam localizações físicas diferentes.. Assim usando o modelo cliente/servidor, uma invocação deve ser enviada como uma mensagem para o objeto que reside remotamente. A invocação é executada e o resultado deve então ser enviado como uma mensagem.. A aplicação distribuída pode assumir outros modelos, que não o cliente/servidor, de forma que os objetos possam ser replicados em localizações distintas para disponibilizar tolerância a falhas, ou migrarem para aumentar a performance e disponibilidade.. Problema do acesso concorrente, gerando condições de corrida (race conditions). Os objetos devem se proteger utilizando primitivas de sincronização ou projetando seções críticas.

9 O Modelo de Objetos Distribuídos. Extensão ao modelo de objetos tradicional tornando-o aplicável a objetos distribuídos.. Assim cada processo contém uma coleção de objetos, sendo que alguns dos quais podem receber invocações, sejam remotas ou locais, enquanto outros apenas locais.. Invocações entre objetos em diferentes processos, sejam no mesmo computador ou não, são conhecidas como invocações de métodos remotos.. Objetos que podem receber invocações remotas são conhecidos como objetos remotos.

10 O Modelo de Objetos Distribuídos. Os seguintes conceitos são fundamentais para o modelo de objetos distribuídos: - Referência de Objeto Remoto: Objetos podem invocar métodos de objetos remotos, se eles possuem ou tem acesso a referência de objeto remoto de tal objeto. Uma referência de objeto remoto é um identificador que pode ser usado em um sistema distribuído para se referir a um particular e único objeto remoto. - Interface Remota: Todo objeto remoto tem uma interface remota que especifica quais de seus métodos podem ser invocados remotamente. Interfaces remotas como todas as interfaces, não tem construtores. Em CORBA há uma IDL para definir interfaces remotas, em Java, utiliza-se a própria linguagem.

11 O Modelo de Objetos Distribuídos Representação de uma referência de objeto remoto: end. Internet porta tempo n o do objeto interface remota do objeto 32 bits

12 O Modelo de Objetos Distribuídos. Ações em um Sistema de Objetos Distribuídos: Ocorrem da mesma forma que no modelo de objetos, através de uma invocação de método. Difere quando a invocação é feita para um objeto que não reside no mesmo espaço de endereçamento. Nesse momento é necessária a existência da referência de objeto remoto que pode ser obtida através de uma invocação de método remoto, de forma indireta, isto é, como resultado de uma invocação.. Coleta de Lixo em um Sistema de Objetos Distribuídos: Cooperação entre o coletor local e o remoto.. Exceções: Em Java todos os métodos remotos devem lançar exceções remotas caso ocorram erros durante o processamento da invocação remota.