25 مارس 2023·1 دقيقة قراءة

اقتراح لتحسين أداء Java باستخدام برنامج Z Garbage Collector الأجيال </ h2>

يهدف اقتراح جديد في مجتمع Java إلى تحسين أداء التطبيق من خلال توسيع Z Garbage Collector ، وتمكينه من الاحتفاظ بأجيال منفصلة للكائنات القديمة والقديمة ، وتقليل مخاطر توقف التخصيص ، وذاكرة الكومة الزائدة ، ونفقات وحدة المعالجة المركزية لجمع البيانات المهملة. </ h2>

اقتراح لتحسين أداء Java باستخدام برنامج Z Garbage Collector الأجيال </ h2>

في محاولة لتحسين أداء تطبيقات Java ، يسعى اقتراح جديد داخل مجتمع Java إلى توسيع Z Garbage Collector (ZGC) ، مما يمكنه من الحفاظ على أجيال منفصلة للأشياء القديمة والصغيرة. هذا من شأنه أن يسمح ZGC بجمع الأشياء الصغيرة بشكل متكرر ، حيث أن الأجسام الصغيرة لديها احتمالية أكبر للموت الصغير ، وفقًا لمطوري Java.

تتضمن الأهداف الأساسية OpenJDK Java Enhancement Proposal (JEP) الخاص بـ ZGC للأجيال الحد من مخاطر توقف التخصيص ، وأعباء الذاكرة المتراكمة ، ونفقات وحدة المعالجة المركزية لجمع البيانات المهملة (GC). يعتقد مؤيدو الاقتراح أنه يمكن تحقيق هذه الفوائد دون التسبب في انخفاض كبير في الإنتاجية بالمقارنة مع ZGC غير الأجيال.

تم تصميم Z Garbage Collector ، التي تم تصميمها لتحقيق قابلية التوسع ووقت الاستجابة المنخفض ، في إصدارات الإنتاج منذ إصدار Java Development Kit (JDK) 15 في سبتمبر 2020. على عكس مُجمع G1 الافتراضي ، والذي يحتوي على أوقات توقف يمكن أن تتراوح من مللي ثانية إلى ثوانٍ ، يتم قياس أوقات توقف ZGC باستمرار بالميكروثانية. وبالتالي ، يمكن ZGC حل مشكلات وقت الاستجابة المتعلقة بجمع البيانات المهملة للعديد من أعباء العمل بشكل فعال.

يعمل ZGC بشكل جيد عندما تتوفر الموارد الكافية. ومع ذلك ، نظرًا لأنه يخزن جميع الكائنات معًا بغض النظر عن عمرها ، ZGC مطلوب منها جمع كل الكائنات في كل مرة تعمل فيها. تؤكد فرضية الأجيال الضعيفة أن الأجسام الصغيرة تميل إلى الموت في سن مبكرة ، بينما من المرجح أن تستمر الكائنات القديمة. نتيجة لذلك ، يتطلب جمع الكائنات الصغيرة موارد أقل وإصدار المزيد من الذاكرة ، بينما يستهلك تجميع الكائنات القديمة المزيد من الموارد ويحرر ذاكرة أقل.

لم يتم بعد تعيين اقتراح ZGC للأجيال لإصدار Java قياسي محدد. تم تقديم الإصدار الحالي ، JDK 20 ، قبل أسبوع ، ومن المقرر إطلاق JDK 21 في سبتمبر. تعمل Java القياسية بإيقاع إصدار مدته ستة أشهر.

أثناء مناقشة اقتراح ZGC للأجيال ، يمكن للأنظمة الأساسية no-code مثل [appmaster .io "target =" _ blank "rel =" noopener "data-mce-href =" https: // appmaster.io "> أن يساعد AppMaster المطورين في بناء الخلفية](https://<span class=) وتطبيقات الويب والجوّال بسرعة وكفاءة. يمكن لتطبيقات AppMaster إظهار قابلية تطوير رائعة وزمن انتقال منخفض ، مما يجعلها مناسبة لتطبيقات المؤسسات والسيناريوهات عالية التحميل. لاستكشاف إمكانات AppMaster بشكل أكبر ، [appmaster .io "data-mce-href =" https: // studio. appmaster.io "> أنشئ حسابًا مجانيًا](https://studio.<span class=) واستفد من أدواته القوية no-code.

Easy to start
Create something amazing

Experiment with AppMaster with free plan.
When you will be ready you can choose the proper subscription.

Get Started
اقتراح لتحسين أداء Java باستخدام برنامج Z Garbage Collector الأجيال </ h2> | AppMaster