Olá a todos,
Gostaria de entender melhor como funciona o processo de atualização de uma aplicação web em produção.
Muitas vezes temos que atualizar arquivos de interface, classes ou até memos .JAR de nossos projetos.
Minhas dúvidas são:
- Qual o application server mais amigável e rápido para deployment?
- É possível realizar deployment parcial, ou seja, sem a necessidade de empacotar toda a aplicação?
- Supondo que seja possivel realizar o deployment parcial, será necessário reiniciar o aplicativo apenas ou terei que reiniciar o application server?
Agradeço qualquer ajuda e orientações, estou realizando estudo comparativo entre deployment de aplicações ASP.NET e JavaServer Faces.
Cara, isso vai muito de como você montou sua aplicação.
-
Varia muito. O JBoss por exemplo costuma atualizar o WAR automaticamente quando ele percebe uma mudança. Mas oq ele faz é derrubar a aplicação e realizar o deploy novamente de modo automático.
-
Parcial sim, uma aplicação JEE completa teria por exemplo um módulo EAR para persistencia e um para WEB. Você poderia atualizar apenas a parte WEB.
-
É bem provável que você terá que reiniciar.
Obrigado pela resposta,
Gostaria de complementar a pergunta com a seguinte questão:
Os módulos, pacotes, devem estar dentro de um diretório específico no mesmo web server que está instalado o application server? Ou posso disponibiliza-los em um local de rede e mapea-los no application server?
A idéia é ter um ponto central onde os arquivos vão ficar e diversos application server lendo estes arquivos, desta forma, a simples troca de um pacote ou módulo, no ponto central atualizaria todas as instancias da aplicação em application server distintos.
Caso não seja possível, a dúvida que fica é:
Existe uma coesão entre o application server e a aplicação? ou seja, o application server realiza a carga dos módulos e pacotes e os mantém em memória independente do usuo da aplicação?
Obrigado pela ajuda.
oi,
Dê uma pesquisada sobre hot deploy na documentação do seu servidor de aplicação
abs