objetos distribuídos e invocação remota
TRANSCRIPT
Objetos Distribuídos e Invocação Remota
Em Sistemas Distribuídos, objetos que podem receber invocações a métodos remotos
são chamados de objetos remotos e implementam uma interface remota.
Aplicativos distribuídos são aqueles aplicativos compostos de programas que estão em
cooperação, executados em vários processos diferentes e que precisam executar (invocar)
operações outros processos, frequentemente sendo executados em diferentes computadores.
Para atender essa necessidade alguns modelos de programação foram estentidos para
aplicação em programas distribuídos:
Modelo Remote Procedure Call (RPC): o modelo mais conhecido e que permite
chamar procedimentos em programas servidores executados em processos
separados.
Modelo Remote Method Invocation (RMI): o modelo mais recente, é uma
extensão do modelo orientado à objetos e permite a um objeto que vive num
processo invocar métodos de um objeto instanciado em outro processo.
Modelo de eventos: programação baseada em eventos torna possível que
objetos recebam notificações de eventos em outros objetos, nos quais eles
possuem interesse declarado.
Midleware
Software que disponibiliza um modelo de programação para construção de blocos de
processos e troca de mensagens. Usa protocolos para troca de mensagens para permitir
abstrações de alto nível. Os aspectos importantes de um Middleware são: a transparência da
localização e a independência dos detalhes dos protocolos de comunicação, sistemas
operacionais e hardware de computador.
Objetos distribuídos
Os objetos distribuídos se caracterizam por poder adotar diferentes modelos de
arquitetura como exemplo a arquitetura cliente-servidor.
Modelo de objetos se caracteriza por:
Referências a objetos (ex.: variáveis);
Interfaces (assinatura de um conjunto de métodos para posterior
implementação);
Ações (invocação de métodos, que podem, inclusive, invocar mais métodos);
Exceções (tratamento de erros);
Garbage collection (liberação de espaços em memória sem utilização).