Comunicação Distribuída

Slides:



Advertisements
Apresentações semelhantes
Sistemas Distribuídos Baseados em Objetos
Advertisements

Introdução aos Sistemas Distribuídos
Comunicação entre processos distribuídos
RMI-IIOP.
RPC Remote Procedure Call
Java RMI Alcides Calsavara. Objetivos Permitir que um método de uma classe Java em execução em uma máquina virtual JVM chame um método de um objeto (instância.
Interação Cliente Servidor
Objetos Distribuídos e Invocação Remota
Desenvolvimento de Aplicações Distribuídas
Invocação de Métodos Remotos RMI
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
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
Comunicação Inter-Processos
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
Comunicação Inter-Processos
DAS Sistemas Distribuídos para Automação Industrial
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.
Introdução à Programação Distribuída em Java
Middleware e Sistemas Distribuídos
Arquitetura CORBA e Objetos Distribuídos
Web Services Uninorte Semana de Tecnologia da Informação
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
Administração e Integração de Redes em Sistemas Distribuídos
T. D. S. I. PARA WEB Prof. Emmanuel Nolêto. Java RMI.
Redes e Sistemas Distribuídos II – Cód
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.
CORBA Commom Object Request Broker Architecture Conhecendo o Padrão da OMG 3º Engenharia da Computação Vitor C. Tamarozi Romeu L. Furlan Júnior Prof. Edson.
Concorrência e thread Petrônio Júnior(pglj) Márcio Neves(mmn2)
RMI x C# Remote Emilena Specht – 1113/01/9 2004/01
CORBA Apresentação do Padrão CORBA Maurício Maron Mendes Ramiro Pereira de Magalhães
Programação distribuída e concorrente
Integrações de Aplicações Empresariais Prof. Paulo Fernando da Silva UNC – Universidade do Contestado Pós-Graduação em Sistemas de Informação Aplicados.
Java RMI João Gabriel (jggxm).
1 Comunicação Inter-Processos -> RMI -> RPC -> TCP -> UDP (Abstração de passagem de mensagem)
RMI - JAVA.
RPC and Web Service André Pereira.
Comunicação.
MODELO DE REFERÊNCIA TCP/IP
Objetos Distribuídos para WEB Prof. Paulo Fernando da Silva FURB – Universidade Regional de Blumenau Pós-Graduação em Desenvolvimento WEB.
RMI (Remote Method Invocation) Bruno Edson Plínio Tadeu
RMI Objetos Distribuídos Luiz C. D´oleron SCJP
Capítulo 4: Processos.
Sistemas Distribuídos Prof. Marcus Rodrigues
Java – Remote Method Invocation (RMI)
JR: Flexible Distributed Programming in an Extended Java Elmário Gomes Dutra Jr. Gustavo Romano.
Infra-Estrutura para Computação Distribuída
Conceitos do Cliente Funcionamento Básico do Cliente Como Clientes acessam e usam Objetos Distribúidos.
RMI Remote Method Invocation
Sistemas Distribuídos Carlos Oberdan Rolim Ciência da Computação Sistemas de Informação.
Leonardo de Souza Brasil Orientador: Ricardo Pereira e Silva, Dr
Passagens de Mensagens Prof. Dr. Norian Marranghello
Administração e Projeto de Redes Material de apoio Camada de Transporte Cap.4 10/02/2010.
Versão 1 - julho/2013 Tecgraf PUC-Rio Novembro de 2013 Principais conceitos de CORBA.
Sistemas Distribuídos Prof. Marcus Rodrigues
Protocolos de Comunicação e Passagem de Mensagens
Sockets Redes de Comunicação de Dados Prof. Esp. Cristiano José Cecanho.
Pearson Education Sistemas Operacionais Modernos – 2ª Edição 1 Sistemas Operacionais IESP - FATEC-PB Professor: Gustavo Wagner.
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.
UNIFACS – Universidade Salvador Prof. Arquitetura Cliente/Servidor Parte V Middleware Eduardo Xavier.
Arleys Pereira Nunes de Castro - Mestrando : Modelagem computacional (SENAI-MCTI) Especialista : Sistema distribuídos
Transcrição da apresentação:

Comunicação Distribuída Estratégias diferentes que permitem a comunicação entre aplicações distribuídas

Estratégias Distintas Sockets RPC - Remote Procedure Call RMI - Remote Method Invocation CORBA – Commom Object Request Broker Architecture

Conceito de Porta Uma porta é um ponto de interação entre uma aplicação e o sistema operacional da máquina. Proporciona à aplicação uma forma de estabelecer um canal de comunicação com o sistema operacional da máquina. É representada por um endereço numérico.

Sockets Um socket é um mecanismo de baixo nível, definido como uma extremidade de um canal de comunicação. Um par de processos (thread) se comunica em uma rede utilizando um par de sockets – um para cada processo. Um mecanismo do TCP/IP que permite que processos distribuídos se comuniquem em uma rede. Um socket é formado por um endereço IP concatenado com um número de porta.

Sockets Um mecanismo de baixo nível, entre processos ou threads distribuídos, que permitem a troca de um fluxo não-estruturado de bytes entre os threads em comunicação.

Sockets Java Sockets orientados a conexão (TCP): Classes: Socket, ServerSocket Sockets sem conexão (UDP): Classe: DatagramSocket Socket de difusão (multicast): Classe: MultcastSocket

Estruturando os Dados na Comunicação É responsabilidade da aplicação-cliente, o da aplicação-servidor impor uma estrutura de dados. Existem dois métodos alternativos de comunicação em nível mais alto: RPC e RMI

RPC Permite que um processo ou uma thread chame um procedimento ou função em outro processo, que pode estar em um espaço de endereçamento separado na mesma máquina ou pode estar executando em um computador remoto conectado por uma rede.

Vantagens do RPC Gerencia o canal de comunicação, de forma que os programas aplicativos podem ser escritos de modo que a localização de um procedimento, quer local ou remoto, seja transparente. Mostrar figuras ...

RMI É um recurso Java. Permite que uma thread invoque um método em um objeto remoto, o qual reside em uma máquina virtual Java (JVM) distinta que pode estar no mesmo computador ou em uma JVM em um computador remoto conectado por rede.

RMI RMI baseia-se em objetos: suporta a invocação de métodos em objetos remotos. Com RMI é possível passar objetos como parâmetros para os métodos remotos. Torna possível aos usuários desenvolver aplicações Java que sejam distribuídas por toda a rede.

RMI Para tornar os métodos remotos transparentes ao cliente e ao servidor, RMI implementa o objeto remoto usando stubs e skeletons. Um stub é um proxy (representante)do objeto remoto, que reside junto ao programa-cliente.

RMI Quando o programa-cliente invoca um método remoto, é esse stub para o objeto remoto que é chamado. Um stub no cliente serve para criar uma mensagem consistindo do nome do método a ser invocado no servidor e nos parâmetros desse método.

RMI O stub envia então essa mensagem para o lado do servidor, onde a mensagem é recebida pelo skeleton do objeto remoto. O skeleton então faz a extração dos parâmetros e invoca o método desejado no objeto remoto do lado servidor.

RMI O skeleton agrega o valor de retorno (ou exceção) em uma mensagem e retorna-a ao programa-cliente. O stub efetua a extração do valor de retorno e o passa para o cliente.

RMI É uma tecnologia Java nativa e por isso requer que todas as aplicações distribuídas sejam escritas em Java. Muitos sistemas existentes que talvez queiramos que seja distribuídos são escritos em C, C++, Ada, COBOL, Smaltalk, ou outra linguagem. CORBA permite a comunicação entre aplicações cliente e servidor heterogêneas.

CORBA