Menyelesaikan Ralat Ruang PermGen dalam Tomcat 6.0
Di tengah-tengah operasi pengindeksan dalam Tomcat 6.0, anda mungkin menghadapi ralat ruang permgen yang digeruni. Isu ini timbul disebabkan oleh jumlah ruang yang tidak mencukupi untuk penjanaan kekal, yang menyimpan kelas, kaedah dan metadata lain.
Meningkatkan Ruang PermGen
Untuk meningkatkan ruang permgen, anda boleh menggunakan argumen -XX:MaxPermSize. Sebagai contoh, arahan berikut akan memperuntukkan 128 megabait kepada ruang permgen:
-XX:MaxPermSize=128m
Penyelesaian Alternatif
Walau bagaimanapun, hanya meningkatkan ruang permgen menawarkan jeda sementara. daripada penyelesaian kekal. Sebaliknya, pertimbangkan untuk mendayakan kutipan sampah PermGen dengan menggunakan hujah berikut:
-XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled
Pendekatan ini membenarkan JVM untuk menuntut semula kelas dan objek yang tidak digunakan dalam PermGen, mengurangkan kekangan ruang.
Pertimbangan Lain
Penempatan semula yang kerap boleh menyumbang kepada isu ini. Gunakan alat pemantauan seperti virtualvm atau jconsole untuk memerhatikan penggunaan ruang PermGen dan sahkan sama ada ia stabil selepas pengindeksan awal.
Jika masalah berterusan, anda perlu meneroka JVM alternatif seperti IBM JVM. Tidak seperti Oracle JVM berasaskan PermGen, IBM JVM menghapuskan keperluan untuk Generasi Kekal dan memintas ralat ini.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat Ruang PermGen dalam Tomcat 6.0?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!