Em um ambiente de produção devo habilitar ou não o hot deploy do jboss
Duvida
9 Respostas
So queria entender pq não fazer!!
hot deploy costuma ser fonte de varios OutOfMemoryError por causa de memory leaks com ClassLoaders.
costuma ser uma ma ideia deixa-lo habilitado em producao
nas empresas onde eu trabalhei tem uma janela de deploy. Por exemplo, a cada 15 dias tem deploy. nesse dia, num horario em que praticamente ninguem está utilizando o serviço, o mundo para, e a nova versão é instalada. As pessoas validam, se estiver tudo certo, ok, senão, aborta o deploy e tenta de novo em 15 dias. podem haver exceções, mas não deveria ser muito comum.
Não necessariamente. vc pode simplesmente para a aplicação que vc vai fazer o deploy, e depois reiniciar somente essa aplicação. Podem ter outras coisas rodando dentro do Jboss, não precisa parar tudo, para só o que vc vai mexer.
Na minha opinião, pelo menos uma vez a cada sei lá, um mês, é interessante reiniciar o jboss inteiro, pra descarregar objetos que estão presos na memória por exemplo, aplicar correções no nervidor e no SO, mas é minha opinião, ai cada empresa tem uma estratégia diferente.
hehehe então… eu nunca fiz isso no Jboss. tinha um cara na minha equipe que era responsavel pelo Jboss, eu cuidava do Websphere em outro projeto, não vou poder te ajudar muito…
melhor vc abrir outro tópico mesmo…
Não sei se é tarde para dar um up numa discussão que, ao que parece, está fechada…
Mas aproveitando…
Concordo que hot deployment seja um feature que deva ser desabilitado em produção, visto leaks de class loaders (isso tem acontecido com alguma frequência). Mas com isso desabilitado, como faria para fazer atualização da minha aplicação? Deveria parar o processo do JBoss, trocar o pacote da aplicação, e iniciar o serviço?
Na real, gostaria de saber como funciona o processo de deployment no mercado. Alguém pode me dizer? Já temos um processo de disponibilização aqui, mas gostaria de conhecer o processo de outras empresas para chegarmos no melhor processo possível.
Um abraço e obrigado pela ajuda desde já.
Feliz Ano Novo a todos.
Entendi… Se o mundo pára, imagino que você se refere justamente ao que eu falei alí em cima, quer dizer: o JBoss é desligado. Faço o deployment e então se inicializa novamente?
Concordo. Estou perguntando tudo isso porque estou tendo uma experiência estranha com o JBoss no openSUSE. Talvez mereça outro tópico, mas o impacto é que sempre que preciso fazer uma atualização de aplicação, ele dá erro e sou forçado a reiniciar o JBoss. Coisa que no Windows não acontece.
Sou muito adepto, como você falou, a parar somente a aplicação que vou mexer. Agora uma dúvida: você faz isso pelo JMX Console (como?) ou manualmente excluindo o pacote da aplicação?
Só pra constar:
O meu problema já foi resolvido aqui mesmo no GUJ: http://www.guj.com.br/posts/list/115254.java
Abraço