0% acharam este documento útil (0 voto)
6 visualizações2 páginas

Trabalho 2 RMI

O trabalho 2 da disciplina de Sistemas Distribuídos requer a reimplementação da primeira questão do trabalho anterior utilizando comunicação cliente-servidor via Remote Method Invocation (RMI). A aplicação deve incluir requisitos como quatro classes de entidades, composições de agregação e extensão, e métodos para invocação remota, além de utilizar representação externa de dados. Os alunos devem entregar o código fonte e um relatório descritivo do serviço remoto implementado.

Enviado por

Nicolas Ferreira
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
6 visualizações2 páginas

Trabalho 2 RMI

O trabalho 2 da disciplina de Sistemas Distribuídos requer a reimplementação da primeira questão do trabalho anterior utilizando comunicação cliente-servidor via Remote Method Invocation (RMI). A aplicação deve incluir requisitos como quatro classes de entidades, composições de agregação e extensão, e métodos para invocação remota, além de utilizar representação externa de dados. Os alunos devem entregar o código fonte e um relatório descritivo do serviço remoto implementado.

Enviado por

Nicolas Ferreira
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Universidade Federal do Ceará - Campus de Quixadá

Cursos: SI, ES, RC, CC e EC


Disciplina: Sistemas Distribuídos
Código: QXD0043
Professor: Rafael Braga

Trabalho 2 – Remote Method Invocation (RMI)

1) Reimplemente a 1a questão do trabalho 1 através da comunicação cliente-ser-


vidor e organizado num protocolo de requisição resposta como descrito na seção 5.2
do livro texto e ilustrado na figura abaixo. A comunicação entre cliente e servidor deve
ser implementada via Invocação Remota de Método ou Remote Method Invocation
(RMI). Não crie sockets nesse trabalho!

O uso dos métodos sugeridos pelo autor, que implementam o protocolo requisição-res-
posta, deve ser seguido, mas alterações em suas assinaturas são permitidas.

· public byte[] doOperation (RemoteObjectRef o, int methodId, byte[] arguments): envia


uma mensagem de requisição para o objeto remoto e retorna a resposta. Os argumentos
especificam o objeto remoto, o método a ser chamada e os argumentos para aquele mé-
todo.
· public byte[] getRequest (): obtém uma requisição de um cliente através de uma porta
servidora.
· public void sendReply (byte[] reply, InetAddress clientHost, int clientPort): envia a men-
sagem de resposta para o cliente, endereçando-a a seu endereço IP e porta.

As mensagens de requisição/resposta devem ser empacotadas como mostra a figura


abaixo. A função de cada elemento da mensagem é descrita também na seção 5.2 do livro texto.
Os elementos objectReference e methodID podem ser Strings que representam, respecti-
vamente, o nome do objeto que fornece o serviço e o nome do método a ser invocado.

Requisitos adicionais da aplicação

- A aplicação deve ter no mínimo 4 classes do tipo entidades;


- A aplicação deve ter no mínimo 2 composição tipo agregação (“tem-um”);
- A aplicação deve ter no mínimo 2 composição tipo extensão (“é-um”);
- A aplicação deve ter no mínimo 4 métodos para invocação remota.
- A aplicação deve utilizar a passagem por referência para execução objetos remotos;
- A aplicação deve utilizar a passagem valor para execução objetos locais no servidor;

A passagem de parâmetro por valor deve utilizar a representação externa de dados. Para a
representação externa de dados nas chamadas remotas (métodos, argumentos e resultados),
sugere-se que seja implementada através de protocol buffers. Contudo, versões em XML ou
JSON também são aceitas.

Orientações gerais:

Cada dupla ou estudante deve entregar, além do URL do repositório do código fonte, um rela-
tório descrevendo o serviço remoto implementado. A entrega deve ser feita via upload no MO-
ODLE. Não há a exigência de prover Interface Gráfica com o Usuário (GUI). Modo texto é sufi-
ciente.

Você também pode gostar