Criação de um serviço que roda na rede

4 respostas
ricardo_batista_alme

Pessoal Boa tarde.
Alguém tem alguma ideia como eu crio a seguinte tarefa:
Tenho um aplicativo no servidor que faz um processo e cria um arquivo.
Tenho uma maquina cliente que depende deste aquivo para trabalhar, quando existe um novo arquivo tem que ser copiado automaticamente
para o seu diretorio para sempre trabalhar com um arquivo atualizado.
Ai esta o X da questão ,como o aplicativo que esta no servidor diz para a maquina cliente, olha tenho arquivo atualizado pega aqui.
Pensei em RMI ,mais não sei se é o ideal, pensei em uma thread rodando a casa x tempo pra ver se tem arquivo, mais isso tem custo de rede , e para que rodar uma
threde para acessar a rede a cada tempo se o arquivo ainda é o mesmo, o ideal seria informar ao cliente se atualize acabei de criar um novo arquivo.
Alguém tem alguma ideia ?

4 Respostas

rmendes08

Você pode implementar o padrão Observer de maneira distribuída. O nó que distribui o arquivo deve disponibilizar um método RMI para que outros nós registrem-se como observadores. Por outro lado, os nós que devem receber o arquivo devem implementar um método para receber o arquivo. Assim, quando o novo arquivo for criado o nó que cria o arquivo percorre a lista de observadores chamando o método RMI para entregar o arquivo.

A consequência é que desaparece a noção de cliente-servidor, pois os 2 lados da comunicação podem iniciar uma conversação.

ricardo_batista_alme

Poderia ser uma solução, mais nunca usei o padrão que voce mencionou, tem algum exemplo ai ?

rmendes08

Cara, é só dar uma Googlada por Observer Pattern, ou então Listener Pattern

ricardo_batista_alme

Blz já achei aqui, vou implementar, acho que vou ter duvida como eu notifica via RMI os Observer que são os clientes, para assim sofrerem a atualização, mais ai é uma outra historia, vou criar o padrão duvidas eu volto a postar , brigadiz.

Criado 5 de março de 2012
Ultima resposta 5 de mar. de 2012
Respostas 4
Participantes 2