Permgen alanını artırın


Yanıtlar:


142

Kullanabilirsiniz :

-XX:MaxPermSize=128m

alanı artırmak için. Ancak bu genellikle sadece kaçınılmaz olanı erteler.

PermGen'in çöplerin toplanmasını da sağlayabilirsiniz.

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

Bu genellikle çok sayıda yeniden dağıtım yapıldığında meydana gelir. Endeksleme gibi bir şey kullanmanıza şaşırdım. Perm gen alanını izlemek için virtualvm veya jconsole kullanın ve indekslemeyi ısındıktan sonra seviyelerini kontrol edin.

Belki de IBM JVM gibi başka bir JVM'ye geçmeyi düşünmelisiniz. Kalıcı Nesil yoktur ve bu soruna karşı bağışıktır.


Teşekkürler!! Ama nereye yazmalıyım? Sanırım burada bir dosyada: tomcat / conf Yanlış mıyım?
Blanca

1
Tomcat için, bu seçeneklerin birleştirildiği bir değerle CATALINA_OPTS ortam değişkeni oluşturabilirsiniz. Başlangıç ​​betiği, tomcat'i başlatmadan önce bunları Java komut satırına ekleyecektir. JVM bu noktada zaten yapılandırıldığı için bu tomcat yapılandırmasından yapılamaz.
Peter Tillemans

2
FreeBSD ise, seçenekleri /etc/rc.conf dosyasına ekleyin. Önce tomcat başlangıç ​​komut dosyasını okuyarak tam olarak arayacağı parametreyi görün.
Brian Knoblauch

3
OpenJDK 7'de CMSPermGenSweepingEnabled, CMSClassUnloadingEnabled lehine kullanımdan kaldırıldı
Petr Gladkikh


3

IDE'nizdeki VM argümanları aracılığıyla da artırabilirsiniz. Benim durumumda, Eclipse üzerinde çalışan Tomcat v7.0 kullanıyorum. Bunu yapmak için sunucunuza (Tomcat v7.0) çift tıklayın. 'Başlatma yapılandırmasını aç' bağlantısını tıklayın. 'Bağımsız Değişkenler' sekmesine gidin. VM argümanlar listesine -XX: MaxPermSize = 512m ekleyin. 'Uygula'yı ve ardından' Tamam'ı tıklayın. Sunucunuzu yeniden başlatın.


3

Bellek ayarlarının kullanılmadığını öğrendiyseniz ve bellek ayarlarını değiştirmek için \ bin klasöründe tomcat7w veya tomcat8w kullandım.

tomcat monitör

Java sekmesini tıklayın ve arguments.restart tomcat'i ekleyin


@ Jérémie BI, doğrudan görüntü eklemek için yeterli itibar noktasına sahip değil.
Kevin STS

0

Debian benzeri dağıtımlarda bunu /etc/default/tomcat[67]

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.