Fala galera. Primeiramente vou explicar bem a minha situação. Estou trabalhando num sistema que terá um modulo web que ficará num servidor no cliente. O grande problema é que este(s) cliente(s) tem uma conexão muito baixa, as vezes até discada. Eventualmente, iremos realizar atualizações neste servidor mas não queríamos ter que baixar um jar ou um módulo completo, justamente por conta da conexão lenta do cliente. A minha pergunta é(finalmente):
Existe alguma forma de enviar somente as classes alteradas para o cliente, ou algum framework que trabalhe com isso?
Você só quer mandar as classes alteradas (atualizador?)
Se precisar escrever um módulo desses, e se o servidor for Windows (argh) não se esqueça que é necessário desativar o programa que usa os .jars a serem atualizados porque senão eles ficam presos.
Se você quer mandar a diferença dos JARs como classes separadas (e remontar o JAR) você precisa
Basicamente o módulo atualizador tem de fazer algo como:
Derrubar completamente o programa a ser atualizado (senão os .jars vão ficar presos)
Enviar as credenciais para o servidor (tipicamente algo como usuário e senha)
Mandar uma lista compactada do que ele tem já instalado (essa lista pode ser, por exemplo, de nomes de arquivos e seus respectivos Hashes MD5 ou SHA-1). Eu digo “compactada” porque a lista pode ser razoavelmente grande se você dividir cada .jar em .class, por exemplo)
O servidor, de posse dessa lista, deve achar que coisas ele tem de mandar (por exemplo, quais .class , .png etc.) e que coisas ele tem de solicitar a remoção (para não deixar lixo no cliente)
O cliente recebe uma série de arquivos modificados, assim como comandos para deletar os arquivos que não devem mais aparecer nesta versão corrente.
E
everton_verbo
Entendi o processo, mas queria saber de algum case ou talvez alguma ferramenta que trabalhasse desta forma. Alguém conhece algum case ou ferramenta semelhante ao que eu falei, ou que execute este tipo de atividade?