سؤال

انا استخدم ICEFaces تطبيق يعمل على جبوس ، حاليا heapsize هو

-Xms1024m –Xmx1024m -XX:MaxPermSize=256m

ما هو التوصية الخاصة بك لضبط الذاكرة المعلمات جبوس 5 (5.0.1 GA) JVM 6?

هل كانت مفيدة؟

المحلول

ووفقا لهذا المقالة :

<اقتباس فقرة>   

وAS 5 من المعروف أن الجشع عندما يتعلق الأمر <لأ href = "http://codingclues.eu/2008/permgen-space-exceptions-with-maven-due-to-memory-leak/" يختلط = "noreferrer نوفولو"> PermGen . عند بدء، فإنه غالبا ما يلقي OutOfMemoryException: PermGen Error.

وهذا يمكن أن تكون مزعجة خاصة أثناء التطور عندما كنت بصدد نشر الساخن في كثير من الأحيان تطبيق. في هذه الحالة، توصي جبوس QA إلى <م> رفع حجم permgen، والسماح الطبقات التفريغ والاجتياح permgen :

-XX:PermSize=512m -XX:MaxPermSize=1024 -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -XX:+CMSClassUnloadingEnabled

ولكن هذا هو أكثر لمعلوماتك، أنا لا أقترح أن يطبق هذا التكوين عمياء (كما كتب الناس في التعليقات، "إذا لم يتم كسره، لا تصلحه").

وفيما يتعلق حجم كومة الخاص بك، نضع في اعتبارنا دائما: <م> اكبر كومة، ويعد GC كبير . الآن، عندما تقول "من المؤكد أنها كانت صغيرة جدا"، وأنا لا أعرف حقا ماذا يعني هذا (ما الأخطاء، والأعراض، وما إلى ذلك). على حد علمي، كومة 1024M هو في الواقع كبيرة جدا لتطبيق الويب، وينبغي أن يكون حقا أكثر من كافية بالنسبة لمعظمها. فقط حذار من مدة GC الرئيسية.

نصائح أخرى

وكومة: ابدأ مع 512 MB، تعيين الحد الأقصى إلى حيث كنت تعتقد التطبيق الخاص بك لا ينبغي أبدا أن تحصل، وليس لجعل حياتك بداية الخادم مبادلة

وPermgen: هذا هو عادة مستقرة بما فيه الكفاية، وبمجرد أن التطبيق يقرأ كل الطبقات المستخدمة في التطبيق. إذا كان لديك اختبار التطبيق وأنه يعمل مع 256 MB، ثم ترك الأمر ذلك.

@wds:انها بالتأكيد ليست فكرة جيدة أن مجموعة كومة الذاكرة المؤقتة أقصى مستوى ممكن لسببين:

  1. كبيرة أكوام الكامل GC يستغرق وقتا أطول.إذا كان لديك PermGen تمكين المسح الضوئي كبير PermGen الفضائية سوف يستغرق وقتا أطول GC كذلك.
  2. جبوس على لينكس يمكن أن تترك غير مستخدمة I/O مقابض مفتوحة لفترة طويلة بما يكفي لجعل لينكس تنظيفها قسرا ، ومنع جميع العمليات على الجهاز حتى يتم إكمال (قد يستغرق أكثر من 1 دقيقة!).إذا كنت قد نسيت لإيقاف الساخنة نشر الماسح الضوئي, هذا لن يحدث أكثر من ذلك بكثير في كثير من الأحيان.

هذا من شأنه أن يحدث ربما مرة في الأسبوع في طلبي حتى أنا:

  1. انخفضت -Xms إلى نقطة حيث جبوس بدء التشغيل بدأت تبطئ
  2. انخفضت -Xmx إلى نقطة حيث الكاملة GCs يحدث أكثر في كثير من الأحيان, لذا لينكس I/O التعامل مع تنظيف توقف

للمطورين أعتقد أنه بخير لزيادة PermGen ، ولكن في الإنتاج ربما تحتاج إلى استخدام فقط ما هو ضروري لتجنب طويلة GC مؤقتا.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top