Carregar apresentação
A apresentação está carregando. Por favor, espere
1
Arquitetura CORBA e Objetos Distribuídos
Sistemas Distribuídos Prof. Danielle Martin Universidade de Mogi das Cruzes
2
C ommon O bject R equest B roker A rchitecture
Arquitetura CORBA C ommon O bject R equest B roker A rchitecture
3
Arquitetura CORBA Criada pelo Object Management Group (OMG), é a arquitetura padrão de sistemas distribuídos heterogêneos. Propõe uma estrutura comum para o gerenciamento de objetos distribuídos (OMA – Object Management Architecture).
4
Arquitetura CORBA – Características
Implementação do ORB – Object Request Broker Módulo intermediário entre o cliente e o servidor Corretor para troca de mensagens (requisição / resposta) Invocação remota de métodos Cliente e servidor não se conhecem diretamente MIDDLEWARE
5
Arquitetura CORBA – Representação
6
IDL Stubs/Skeletons IDL Stub – interface estática do lado cliente compilada com protótipos dos métodos invocados a um servidor. Gerado automaticamente pelo compilador do ORB Permite ao cliente acessar o componente remoto IDL Skeleton – interface estática compilada com os métodos remotos do lado servidor Recebe mensagem com parâmetros de entrada Realiza a chamada para a real implementação da classe Empacota mensagem de resposta
7
IDL – Interface Definition Language
Linguagem universal para definição de interfaces O ORB oferece um compilador IDL O compilador IDL gera os arquivos Stubs e Skeletons Linguagem de definição, e não de programação
8
Distribuição de Objetos Remotos
A distribuição de objetos remotos consiste no compartilhamento, através do middleware, de uma instância de objeto que pode ser acessada de diferentes máquinas. E possível compartilhar objetos distribuídos em Java utilizando o Java RMI – Remote Method Invocation
9
Arquitetura de um Objeto Distribuído
10
Servidor do Objeto Distribuído
A classe Servidor cria a instância do meuObj e realiza sua publicação no middleware, sob o nome objDist. Utiliza-se o metodo rebind, da classe Naming: Naming.rebind(“//localhost/objDist”, meuObj); O objeto, com seus atributos e métodos, fica acessível para qualquer classe que saiba acessar sua referência.
11
Cliente do Objeto Distribuído
Por questão de encapsulamento e reuso, o Cliente não deve ter acesso à implementação da classe de negócio, que gerou o objDist. O acesso é feito utilizando uma classe de interface para receber a referência do objeto. A referência do objDist é recuperada usando o metodo lookup da classe Naming: InterfaceObj objRef; objRef = (InterfaceObj) Naming.lookup(“//ip.do.servidor/objDist”);
12
RMI – Remote Method Invocation
Servidor.java ObjetoNegocio meuObj = new ObjetoNegocio(); Naming.rebind(“//localhost/objDist”, meuObj); Cliente.java InterfaceObjeto objRef; objRef = (InterfaceObjeto) Naming.lookup(“//ip.do.serv/objDist”);
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.