Pergunta

Eu tenho algum problema de vazamento de memória no meu web app, que é implantado no tomcat.Para encontrar a causa raiz eu ativada HeapDumpOnOutOfMemory erro de configuração:

-XX:-HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/usr/local/tomcat/logs

e as definições de memória no tomcat:

-Xms256m -Xmx768m -XX:PermSize=128m -XX:MaxPermSize=256m

Quando o limite de memória problema aconteceu, eu vejo

o java.lang.OutOfMemoryError:Java heap space

no arquivo de log do tomcat, mas o .hprof arquivo não é gerado.Estou em falta alguns ajustes aqui?

Foi útil?

Solução

Como o @beny23 escreveu você deve usar -XX:+HeapDumpOnOutOfMemoryError

e como é afirmado aqui:

A -XX:HeapDumpOnOutOfMemoryError Opção Esta opção indica ao Java HotSpot VM para gerar um despejo de pilha quando uma alocação de Java pilha ou a permanente geração não pode ser satisfeita.Não há a sobrecarga na execução com esta opção, então pode ser útil para sistemas de produção onde o OutOfMemoryError exceção demora muito tempo para a superfície.

Verifique, também, a sua versão de Java desde que esta opção foi introduzido no 1.4.2 12 de actualização, 5.0 update 7.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top