Atualização de sistema WEB sem reiniciar o tomcat

Pessoal, tenho um sistema que está em desenvolvimento mas que já existem partes que irão para produção ou seja, já vamos colocar no ar.
Só que existe um problema, a medida em que formos desenvolvendo novos módulos, precisamos atualizar o sistema sem reiniciar o TOMCA
pois o sistema não pode parar de jeito nenhum. Alguem sabe como posso fazer isso? Valeu !!!

[]´s

[quote]
Rapaz, nem de madruga???

Tipo, criar um executável que de um stop/start no tomcat em uma hs off ?[/quote]
Pior que não cara… o sistema é 24hrs… =( é de hospital. Hospital não para.

valeu, []´s

Verdade que hospital não para, mas de vez em quando é preciso fazer troca de médicos, enfermeiros… não rola uma negociação para 15 min. de parada do tomcat ? :smiley:
Outra alternativa, é você configurar um pequeno cluster de tomcat em um servidor só. Daí rola restartar um tomcat por vez que o sistema não cai. :wink:
E com o tomcat 5.5 ou 6, configurar cluster não faz cair cabelo!! :lol:

Bom, de qualquer maneira, tem como você fazer um reload sem reiniciar o tomcat. Como você não disse de qual versão do tomcat se trata, passei o link para a documentação do tomcat 5.5. :wink:

Basicamente, você roda a seguinte URL no seu browser:

http://localhost:8080/manager/reload?path=/examples

Onde /examples é a aplicação no tomcat.

Caso não funcione, preciso saber como é feita a instalação da aplicação.

Ah, você tem que ter um usuário no tomcat com permissão para usar o manager. :slight_smile:

[quote=gleise]Uau, não pode parar nem de madrugada ?

Bom, tem como você fazer um reload sem reiniciar o tomcat. Como você não disse de qual versão do tomcat se trata, passei o link para a documentação do tomcat 5.5. :wink:

Basicamente, você roda a seguinte URL no seu browser:

http://localhost:8080/manager/reload?path=/examples

Onde /examples é a aplicação no tomcat.

Caso não funcione, preciso saber como é feita a instalação da aplicação.

Ah, você tem que ter um usuário no tomcat com permissão para usar o manager. :)[/quote]

Oi gleise, uso o Tomcat6. Tenho sim um usuário no tomcat manager… mas se eu der um reload, ele não pára a aplicação não? Tipo… no momento do reload? E nesse caso funcionaria??? Com JSP sei que funciona mas com .class não sei. Valeu![]´s

[quote=joca_java]
Oi gleise, uso o Tomcat6. Tenho sim um usuário no tomcat manager… mas se eu der um reload, ele não pára a aplicação não? Tipo… no momento do reload? E nesse caso funcionaria??? Com JSP sei que funciona mas com .class não sei. Valeu![]´s[/quote]

Ah, editei a mensagem anterior. :smiley:

No reload a aplicação fica fora por alguns minutos, mas fica menos que em um restart de tomcat.
O reload só não funciona com o web.xml, qdo o web.xml for editado, precisa rodar o start/stop que também são exlicados no link que passei.

Mas eu se fosse você, pensava sinceramente em um cluster de tomcat, uma vez que o sistema tem que ser failsafe. :wink:

[quote=gleise][quote=joca_java]
Oi gleise, uso o Tomcat6. Tenho sim um usuário no tomcat manager… mas se eu der um reload, ele não pára a aplicação não? Tipo… no momento do reload? E nesse caso funcionaria??? Com JSP sei que funciona mas com .class não sei. Valeu![]´s[/quote]

Ah, editei a mensagem anterior. :smiley:

No reload a aplicação fica fora por alguns minutos, mas fica menos que em um restart de tomcat.
O reload só não funciona com o web.xml, qdo o web.xml for editado, precisa rodar o start/stop que também são exlicados no link que passei.

Mas eu se fosse você, pensava sinceramente em um cluster de tomcat, uma vez que o sistema tem que ser failsafe. :wink:[/quote]
Será que só existe essa solução?

[]´s

Joca,

A idéia de ter um cluster acredito ser a mais recomendada para a tua aplicação. Já que é tão crítica a aplicação, é interessante você ter redundância de servidores. Imagine se o teu tomcat cai por algum estouro de memória ou coisa do gênero. É impossível garantir que um código está 100% livre de erros, portanto esse risco sempre existe.

Tendo um cluster vc aumenta a confiabilidade do teu sistema, reduzindo a chance de queda por um eventual problema, e de quebra resolve essa questão de precisar recarregar uma aplicação em tempo de execução.

Se esse requisito de nunca poder reiniciar o servidor é realmente relevante, você terá que ter uma redundância de servidores obrigatoriamente. É confiar demais deixar apenas um único servidor responsável pela aplicação, que é crítica nesse nível.

Abraço

[quote=erickmelo]Joca,

A idéia de ter um cluster acredito ser a mais recomendada para a tua aplicação. Já que é tão crítica a aplicação, é interessante você ter redundância de servidores. Imagine se o teu tomcat cai por algum estouro de memória ou coisa do gênero. É impossível garantir que um código está 100% livre de erros, portanto esse risco sempre existe.

Tendo um cluster vc aumenta a confiabilidade do teu sistema, reduzindo a chance de queda por um eventual problema, e de quebra resolve essa questão de precisar recarregar uma aplicação em tempo de execução.

Se esse requisito de nunca poder reiniciar o servidor é realmente relevante, você terá que ter uma redundância de servidores obrigatoriamente. É confiar demais deixar apenas um único servidor responsável pela aplicação, que é crítica nesse nível.

Abraço[/quote]

Beleza Erick, vou levantar essa questão por aqui! Muito obrigado pessoal! Valeu!

[]´s

[quote=joca_java]Pessoal, tenho um sistema que está em desenvolvimento mas que já existem partes que irão para produção ou seja, já vamos colocar no ar.
Só que existe um problema, a medida em que formos desenvolvendo novos módulos, precisamos atualizar o sistema sem reiniciar o TOMCA
pois o sistema não pode parar de jeito nenhum. Alguem sabe como posso fazer isso? Valeu !!!

[]´s[/quote]

Rapaz, nem de madruga???

Tipo, criar um executável que de um stop/start no tomcat em uma hs off ?