Aumentar o espaço de permgen


88

Estou trabalhando com o tomcat 6.0 e, enquanto estou indexando (não enquanto estou iniciando o tomcat), tenho um erro de espaço permgen.
Como eu poderia aumentar esse espaço ??

obrigado


Já verifiquei perguntas semelhantes antes, mas não me ajudem. Para onde vai -XX: NewSize = 2.125m?
Blanca

Respostas:


142

Você pode usar :

-XX:MaxPermSize=128m

para aumentar o espaço. Mas isso geralmente apenas adia o inevitável.

Você também pode ativar o PermGen para a coleta de lixo

-XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled

Normalmente, isso ocorre ao fazer muitas reimplantações. Estou surpreso que você o tenha usando algo como indexação. Use virtualvm ou jconsole para monitorar o espaço de Perm gen e verifique se ele está nivelado após o aquecimento da indexação.

Talvez você deva considerar mudar para outro JVM como o IBM JVM. Ele não tem uma geração permanente e está imune a esse problema.


Obrigado!! Mas onde devo escrever ?? Acho que em um flile aqui: tomcat / conf Estou errado?
Blanca

1
Para o tomcat você pode criar uma variável de ambiente CATALINA_OPTS com como valor essas opções concatenadas. O script de inicialização irá adicioná-los à linha de comando Java antes de iniciar o tomcat. Isso não pode ser feito a partir da configuração do tomcat, pois a JVM já está configurada nesse ponto.
Peter Tillemans

2
Se for FreeBSD, adicione as opções ao arquivo /etc/rc.conf. Primeiro leia o script de inicialização do tomcat para ver o parâmetro exato que ele estará procurando.
Brian Knoblauch

3
No OpenJDK 7, CMSPermGenSweepingEnabled foi descontinuado em favor de CMSClassUnloadingEnabled
Petr Gladkikh


3

Você também pode aumentá-lo por meio dos argumentos VM em seu IDE. No meu caso, estou usando o Tomcat v7.0, que está sendo executado no Eclipse. Para fazer isso, clique duas vezes no seu servidor (Tomcat v7.0). Clique no link 'Abrir configuração de inicialização'. Vá para a guia 'Argumentos'. Adicione -XX: MaxPermSize = 512m à lista de argumentos da VM. Clique em 'Aplicar' e depois em 'OK'. Reinicie seu servidor.


3

se você descobriu que as configurações de memória não estavam sendo usadas e para alterar as configurações de memória, usei o tomcat7w ou tomcat8w na pasta \ bin. Em seguida, deve aparecer o seguinte:

monitor tomcat

Clique na guia Java e adicione os argumentos.restart tomcat


@ Jérémie BI não tem ponto de reputação suficiente para adicionar imagem diretamente.
Kevin STS

0

Em distribuições como o Debian, você define isso em /etc/default/tomcat[67]

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.