Augmenter l'espace permgen


Réponses:


142

Vous pouvez utiliser :

-XX:MaxPermSize=128m

pour augmenter l'espace. Mais cela ne fait généralement que retarder l'inévitable.

Vous pouvez également activer le PermGen pour être garbage collection

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

Cela se produit généralement lors de nombreux redéploiements. Je suis surpris que vous ayez utilisé quelque chose comme l'indexation. Utilisez virtualvm ou jconsole pour surveiller l'espace de génération Perm et vérifiez qu'il se stabilise après le préchauffage de l'indexation.

Vous devriez peut-être envisager de passer à une autre machine virtuelle Java comme IBM JVM. Il n'a pas de génération permanente et est immunisé contre ce problème.


Merci!! Mais où dois-je l'écrire ?? Je suppose que dans un flile ici: tomcat / conf Ai-je tort ??
Blanca

1
Pour tomcat, vous pouvez créer une variable d'environnement CATALINA_OPTS avec comme valeur ces options concaténées. Le script de démarrage les ajoutera à la ligne de commande Java avant de démarrer tomcat. Cela ne peut pas être fait à partir de la configuration tomcat car la JVM est déjà configurée à ce stade.
Peter Tillemans

2
S'il s'agit de FreeBSD, ajoutez les options au fichier /etc/rc.conf. Lisez d'abord le script de démarrage de tomcat pour voir le paramètre exact qu'il recherchera.
Brian Knoblauch

3
Dans OpenJDK 7 CMSPermGenSweepingEnabled est obsolète en faveur de CMSClassUnloadingEnabled
Petr Gladkikh


3

Vous pouvez également l'augmenter via les arguments VM dans votre IDE. Dans mon cas, j'utilise Tomcat v7.0 qui fonctionne sur Eclipse. Pour ce faire, double-cliquez sur votre serveur (Tomcat v7.0). Cliquez sur le lien "Ouvrir la configuration de lancement". Allez dans l'onglet "Arguments". Ajoutez -XX: MaxPermSize = 512m à la liste des arguments de la VM. Cliquez sur «Appliquer» puis sur «OK». Redémarrez votre serveur.


3

si vous découvrez que les paramètres de mémoire n'étaient pas utilisés et que pour modifier les paramètres de mémoire, j'ai utilisé le tomcat7w ou tomcat8w dans le dossier \ bin.Ensuite, ce qui suit devrait apparaître:

moniteur Tomcat

Cliquez sur l'onglet Java et ajoutez les arguments.


@ Jérémie BI n'a pas assez de points de réputation pour ajouter directement une image.
Kevin STS

0

Sur les distributions de type Debian, vous définissez cela dans /etc/default/tomcat[67]

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.