Tomcat travando direto

8 respostas
eliomar_gomes_campos

hospedei uma aplicação simples na king host, o projeto funcionou normalmente, mas quando passa um certo tempo o tomcat para de funcionar, dai tenho que ir manualmente e reinicia-lo.

o que pode ser?

será que pode ser o arquivo catalina.out que ocupa muito espaço?

preciso de uma solução urgente!

8 Respostas

zoren

Você já deu uma olhada nos logs??

O Tomcat usa muita memória, logo ele trava. Talvez seu problema seja esse

Quanto ao tamanho do log não vejo problema nenhum, já vi logs com mais de 8 gigas e o Tomcat rodando normalmente

zoren

wellington.nogueira:
Pode ser uma série de fatores.
Teria que analisar os logs-de-erro gerados para tentar alguma conclusão.
Pode ser estouro de pilha, por exemplo (necessidade de reconfigurar o uso de memória ou melhorar o código para o mesmo não ocorrer).

zoren, acho que o tomcat usa pouca memória por padrão (suficiente para a maior parte dos casos) e, as vezes, seria necessário aumentá-la, mas como está em um host, não sei se é possível.

quando eu disse muita, quis dizer q ele gasta muita memória.

acho q essas travadas são por causa do famoso PermGem

eliomar_gomes_campos

Como assim objetos mantidos em memória e nunca classificados para coleta (GC)? o que é GC? o que é permGen?
e você quis dizer também que não há possibilidade alguma de ser o log? porque visitei um forum e um dos caras disse que o tamanho do arquivo catalina.out pode influenciar, pois o tomcat também utiliza espaço de armazenamento.

desculpa ai galera porque sou iniciante, estou desenvolvendo meu primeiro sistema profissionalmente falando para a minha faculdade. rsrsrsrs

eliomar_gomes_campos

valeu pela excelente explicação wellington.nogueira ,

olha a king host mandou-me essa resposta:

[color=green]Prezada Fasete,

na realidade efetuamos uma correção na noite desta última sexta-feira em nosso sistema de sinapse, peço que verifiqeu por gentileza.

Todavia, o senhor como pude verificar está colocando toda a saida da sua aplicação para o “catalina.out”, peço que verifique, o que tem real necessidade de colocar a saida para o arquivo.[/color]

não sei como configurar essa saída.

e o log é muito grande para mandar pra vocês por aqui.

fgrassi

todo system.out que vc faz vai pro catalina.out :slight_smile:

da uma olhadinha http://wiki.apache.org/tomcat/FAQ/Logging

WellingtonRamos

Pode ser uma série de fatores.
Teria que analisar os logs-de-erro gerados para tentar alguma conclusão.
Pode ser estouro de pilha, por exemplo (necessidade de reconfigurar o uso de memória ou melhorar o código para o mesmo não ocorrer).

zoren, acho que o tomcat usa pouca memória por padrão (suficiente para a maior parte dos casos) e, as vezes, seria necessário aumentá-la, mas como está em um host, não sei se é possível.

WellingtonRamos

Entendi.

Também pensei a mesma coisa.
Porém pode ser um problema de objetos mantidos em memória e nunca classificados para coleta (GC). Não ocorre na permGen mas causa o mesmo tipo de estrago.
Ou até, algum erro de codificação que deixaria o sistema “em colapso” mas preservando a memória.

Mas sem o log, acaba por ser mera especulação…

WellingtonRamos

Olá,

GC é o Garbage Collector, ou melhor, é “o cara” do java que fará com que seus objetos instanciados que não sejam mais usados sejam liberados da memória. Em geral, dizem que programar em java libera o desenvolvedor de se preocupar com a liberação dos objetos o que não é verdade.
PermGen (permanent generation) é a área de memória do java onde são guardadas as classes (não os objetos), a pilha de chamadas de métodos (e algo mais que não lembro agora).
Existe tbm a memória Heap onde ficam as instâncias e é onde o GC atua mais. Mas se objetos forem alocados (instanciados) sem muito controle (atributos estáticos do tipo Collection, por exemplo) podem sobrecarregar essa memória e acabar por “travar” a aplicação.

Pesquise um pouco sobre o assunto. Vale a pena entender melhor esse assunto :slight_smile:
Seguem alguns links.
http://java.sun.com/docs/hotspot/gc5.0/gc_tuning_5.html


http://java.sun.com/javase/6/webnotes/trouble/TSG-VM/html/memleaks.html

De qualquer forma, antes de continuar procurando o que aconteceu (e culpando o catalina.out :wink: ) procure o log do erro de preferência, logo após o “travamento” para saber qual o stacktrace apresentado. Assim fica mais fácil descobrir a possível causa do erro. Não estou dizendo que não seja ele, mas até agora, só houve especulação…

Criado 26 de abril de 2010
Ultima resposta 27 de abr. de 2010
Respostas 8
Participantes 4