A capacidade de atualizar a aplicação remotamente sem interromper o servidor de aplicação é uma das funcionalidades importantes do HyperServer. Esse recurso permite que os desenvolvedores atualizem sua aplicação web de forma transparente sem necessidade de parar o servidor de aplicação. Tudo o que precisam fazer é enviar a nova versão pelo painel de controle do HyperServer ou enviar um novo binário remotamente usando FTP ou outros métodos de transferência de arquivos.
O Deploy Remoto pode ser feito de duas maneiras diferentes:
Deploy Remoto usando o Painel de Controle do HyperServer
Deploy Remoto usando a pasta especial "deploy"
Deploy Remoto usando o Painel de Controle do HyperServer
Para atualizar a aplicação usando o Painel de Controle do HyperServer siga estes passos:
Na tela de login insira Id e Senha de uma conta do server monitor com direitos administrativos.
clip0148
2
Selecione a aba HyperServer e Enviar
Selecione a aba HyperServer e então clique no ícone Enviar (Upload New Version) na barra de ferramentas.
clip0149
3
Escolha o executável e envie
Selecione seu novo arquivo executável e clique no botão Enviar para completar a operação de upload.
clip0150
4
Confirme a atualização
Você será solicitado a confirmar a atualização da sua aplicação usando o arquivo executável enviado.
clip0151
5
Observe que os Nodes são marcados como Discarded
Após você confirmar a operação de atualização, todos os Nodes existentes serão marcados como Discarded.
clip0152
Nodes Discarded não aceitarão novas sessões. Todas as novas sessões serão direcionadas para novos Nodes Active. Você pode executar diferentes versões lado a lado: versões antigas continuam atendendo sessões existentes enquanto novas sessões são direcionadas para nodes executando a nova versão. Assim que todas as sessões da versão antiga encerrarem, os Nodes Discarded serão removidos e apenas os Nodes Active executando a nova versão permanecerão.
clip0153
6
Certifique-se de que as informações de versão estejam presentes no executável
As informações de versão para cada Node são obtidas a partir das informações de versão incorporadas na sua aplicação Delphi. Certifique-se de que você habilitou as informações de versão e a opção de incremento automático do número de build no IDE Delphi.
clip0154
Importante: Se você estiver usando a versão ISAPI DLL do HyperServer, certifique-se de ter ajustado o limite de tamanho de upload do IIS: https://unigui.com/doc/online_help/adjusting-upload-limit.htm
Deploy Remoto usando a pasta especial "deploy"
Outro método para atualizar sua aplicação remotamente é usar uma pasta especial chamada deploy. Essa pasta é criada automaticamente quando o HyperServer é executado pela primeira vez. Ela está localizada dentro da pasta da sua aplicação.
clip0155
Para deployar sua nova versão siga este procedimento:
1
Copie o novo executável para a pasta deploy
Copie seu novo executável (por exemplo hyper.exe) para a pasta deploy (por exemplo webapp32/hyper/deploy).
2
Renomeie a extensão do arquivo para .dep
Após copiar, renomeie o arquivo copiado e altere sua extensão de .exe para .dep (por exemplo renomear hyper.exe -> hyper.dep).
Esse procedimento pode ser automatizado usando um arquivo batch.
3
Alternativa: use FTP e depois renomeie para .dep
Você também pode usar FTP para enviar o novo arquivo para uma pasta deploy remota. Após a transferência, altere a extensão do arquivo para .dep.
Exemplo: ftp> cd webapp32/hyper/deploy
ftp> put hyper.exe
ftp> rename hyper.exe hyper.dep
O HyperServer monitora continuamente a pasta deploy e assim que detectar um arquivo com extensão .dep ele iniciará o deploy do novo binário. O arquivo .dep será apagado após a conclusão do deploy.
Nota Importante
Você nunca deve copiar/enviar um arquivo diretamente com extensão .dep para a pasta deploy. Fazer isso pode levar a um arquivo executável do Node corrompido e a um deploy falho.