Tingkatkan ruang permgen


88

Saya bekerja dengan tomcat 6.0, dan saat saya mengindeks (bukan saat saya memulai tomcat), saya mengalami kesalahan ruang permgen.
Bagaimana saya bisa menambah ruang itu ??

Terima kasih


Saya memeriksa pertanyaan serupa sebelumnya, tetapi jangan bantu saya. Di mana -XX: NewSize = 2.125m pergi?
Blanca

Jawaban:


142

Kamu bisa memakai :

-XX:MaxPermSize=128m

untuk menambah ruang. Tapi ini biasanya hanya menunda hal yang tak terhindarkan.

Anda juga dapat mengaktifkan PermGen untuk mengumpulkan sampah

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

Biasanya ini terjadi saat melakukan banyak redeploys. Saya terkejut Anda memilikinya menggunakan sesuatu seperti pengindeksan. Gunakan virtualvm atau jconsole untuk memantau ruang gen Perm dan periksa levelnya setelah pemanasan pengindeksan.

Mungkin Anda harus mempertimbangkan untuk beralih ke JVM lain seperti JVM IBM. Ia tidak memiliki Generasi Permanen dan kebal terhadap masalah ini.


Terima kasih!! Tapi di mana saya harus menuliskannya ?? Saya kira dalam satu flile di sini: tomcat / conf Apakah saya salah ??
Blanca

1
Untuk kucing jantan Anda dapat membuat variabel lingkungan CATALINA_OPTS dengan sebagai nilai opsi ini digabungkan. Skrip startup akan menambahkan ini ke commandline Java sebelum memulai tomcat. Ini tidak dapat dilakukan dari konfigurasi tomcat karena JVM sudah dikonfigurasi pada saat itu.
Peter Tillemans

2
Jika ini adalah FreeBSD, tambahkan opsi ke file /etc/rc.conf. Pertama baca skrip start tomcat untuk melihat parameter pasti yang akan dicari.
Brian Knoblauch

3
Di OpenJDK 7, CMSPermGenSweepingEnabled tidak digunakan lagi dan mendukung CMSClassUnloadingEnabled
Petr Gladkikh


3

Anda juga dapat meningkatkannya melalui argumen VM di IDE Anda. Dalam kasus saya, saya menggunakan Tomcat v7.0 yang berjalan di Eclipse. Untuk melakukan ini, klik dua kali pada server Anda (Tomcat v7.0). Klik tautan 'Buka konfigurasi peluncuran'. Buka tab 'Argumen'. Tambahkan -XX: MaxPermSize = 512m ke daftar argumen VM. Klik 'Terapkan' dan kemudian 'OK'. Mulai ulang server Anda.


3

jika Anda menemukan bahwa pengaturan memori tidak digunakan dan untuk mengubah pengaturan memori, saya menggunakan tomcat7w atau tomcat8w di folder \ bin. Maka yang berikut akan muncul:

monitor kucing jantan

Klik tab Java dan tambahkan arguments.restart tomcat


@ Jérémie BI tidak memiliki cukup poin reputasi untuk menambahkan gambar secara langsung.
Kevin STS

0

Pada distribusi mirip Debian Anda mengaturnya /etc/default/tomcat[67]

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.