88 votes

Augmenter l'espace permgen

Je travaille avec tomcat 6.0, et pendant que je suis en train d'indexer (pas pendant que je démarre tomcat), j'ai une erreur d'espace permgen.
Comment pourrais-je augmenter cet espace??

Merci

142voto

Peter Tillemans Points 20129

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 la collecte des déchets de PermGen

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

Cela se produit généralement lors de nombreux redéploiements. Je suis surpris que vous ayez cela en utilisant quelque chose comme l'indexation. Utilisez virtualvm ou jconsole pour surveiller l'espace Perm gen et vérifiez qu'il se stabilise après avoir réchauffé l'indexation.

Peut-être devriez-vous envisager de passer à un autre JVM comme le JVM IBM. Il n'a pas de génération permanente et est immunisé contre ce problème.

11voto

Paroksh Saxena Points 78

Pour tomcat, vous pouvez augmenter l'espace permGem en utilisant

 -XX:MaxPermSize=128m

Pour cela, vous devez créer (si ce n'est pas déjà fait) un fichier nommé setenv.sh dans le dossier tomcat/bin et inclure la ligne suivante :

   export JAVA_OPTS="-XX:MaxPermSize=128m"

Référence : http://wiki.razuna.com/display/ecp/Adjusting+Memory+Settings+for+Tomcat

3voto

Kevin STS Points 133

Si vous avez découvert que les paramètres de mémoire n'étaient pas utilisés et que pour les modifier, j'ai utilisé tomcat7w ou tomcat8w dans le dossier \bin. Alors le message suivant devrait s'afficher:

tomcat monitor

Cliquez sur l'onglet Java et ajoutez les arguments. Redémarrez tomcat.

3voto

user3375152 Points 35

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 à l'onglet 'Arguments'. Ajoutez -XX:MaxPermSize=512m à la liste des arguments VM. Cliquez sur 'Appliquer', puis sur 'OK'. Redémarrez votre serveur.

0voto

der_do Points 11

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

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X