4D Training & Consultancy

تطوير البرمجيات

ضبط أداء JVM ومعالجة مشكلاته

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

4 أيامتنفيذ داخلي أو افتراضي أو مخصصفرق مؤسسية ومجموعات مهنيةالمستوى: متقدم

نظرة عامة

تعلم عملي قابل للتطبيق في بيئة العمل.

تفشل معظم أعمال الأداء في Java لسبب واحد: يغيّر الفريق الخيارات قبل أن يعرف أين يُستهلك الوقت. تُرفع أحجام الذاكرة لإخفاء تسريب، ويُبدَّل جامع المهملات لحل مشكلة تزاحم على الأقفال، وتُضاعَف السعة لامتصاص خلل في التخصيص، ويقيس اختبار مرجعي زمن إحماء المترجم الآني بدل الشيفرة المقصودة. يرسّخ هذا البرنامج انضباط القياس أولاً. يقرأ المشاركون سجلات جمع المهملات وملفات Flight Recorder، ويحللون لقطات الذاكرة لتحديد الكائنات المحتجزة، ويشخّصون التزاحم وتجويع الخيوط من لقطات الخيوط، ويوازنون عن قصد بين الإنتاجية والكمون بأرقام تسند كل تغيير يقترحونه.

المتطلبات المسبقة

خبرة عدة سنوات في تطوير Java أو تشغيلها وإلمام بإدارة تطبيقات Java في بيئة خوادم.

الأهداف

  • تفسير بنية ذاكرة JVM وسلوك التخصيص وسجلات جمع المهملات.
  • اختيار جامع المهملات وتحجيمه بين G1 وZGC وParallel وفق هدف معلن للكمون أو الإنتاجية.
  • تحليل أداء المعالج والتخصيص وتزاحم الأقفال عبر JDK Flight Recorder وMission Control.
  • تحليل لقطات الذاكرة لتحديد التسريبات والمجموعات المحتجزة والمالك الحقيقي للذاكرة.
  • تشخيص تجويع الخيوط والتجمد المتبادل ونفاد المجمّعات من لقطات الخيوط تحت الحمل.
  • تصميم قياسات مرجعية تراعي إحماء المترجم الآني وتنتج أرقاماً تستحق التصرف بناءً عليها.

الفئة المستهدفة

  • مهندسو Java الأقدمون المسؤولون عن الأداء في الإنتاج
  • مهندسو موثوقية المواقع والمنصات الذين يشغّلون أحمال JVM
  • معماريو التطبيقات الذين يحددون أهداف الكمون والسعة والكلفة
  • مهندسو الأداء وأخصائيو اختبارات الحمل
  • مهندسو الدعم الذين يعالجون الحوادث الإنتاجية المصعّدة
  • القادة التقنيون المساءلون عن كلفة البنية التحتية لخدمات Java

محاور البرنامج

هيكل واضح لرحلة التعلم.

محاور البرنامج

تظهر محاور البرنامج في صندوق واحد بدلاً من تحويل كل سطر إلى وحدة منفصلة.

الوحدة 1: بنية JVM الداخلية والكلفة الحقيقية للكائن

مناطق الذاكرة أثناء التشغيل: الكومة وmetaspace ومكادس الخيوط والذاكرة الأصلية

تخطيط الكائن وحجم ترويسته والكلفة الفعلية لعملية التخصيص

مستويات الترجمة الآنية والتضمين ولماذا تضلل القياسات المبكرة

تحليل الإفلات وإلغاء التحسين وحدود ما يستطيع المترجم إصلاحه

الوحدة 2: سلوك جمع المهملات واختيار الجامع

الجمع الجيلي والمناطق وكيف ينشأ زمن التوقف فعلياً

ضبط G1: حجم المناطق وأهداف التوقف والتخصيصات الضخمة

ZGC والجمع منخفض الكمون: كلفته في الإنتاجية والبصمة الذاكرية

قراءة سجلات جمع المهملات لتمييز مشكلة الحجم عن التسريب الحقيقي

الوحدة 3: تسريبات الذاكرة وتحليل الكومة

التقاط لقطات الذاكرة بأمان من نسخة إنتاجية قيد التشغيل

أشجار المهيمنات والحجم المحتجز وتحديد الكائن الذي يحتفظ بالذاكرة

مصادر التسريب الكلاسيكية: الذواكر المؤقتة ومتغيرات الخيوط والمستمعون ومحمّلات الأصناف

نمو الذاكرة خارج الكومة والذاكرة الأصلية الذي لا يظهر في الكومة إطلاقاً

الوحدة 4: التحليل باستخدام Flight Recorder وMission Control

تفعيل تسجيل JFR المستمر بعبء يمكن للإنتاج تحمله

قراءة ملفات المعالج والتخصيص والإدخال والإخراج معاً لا كل على حدة

إعدادات الأحداث والأحداث المخصصة وتسجيل الحادث أثناء وقوعه

تحويل ملف التحليل إلى قائمة مرتبة بالتغييرات التي تستحق التنفيذ فعلاً

الوحدة 5: التزامن والتزاحم وسلوك الخيوط

لقطات الخيوط: التجمد المتبادل والخيوط المحجوبة والمجمّعات المستنفدة

تزاحم الأقفال والمشاركة الزائفة وأحداث المزامنة المتنازع عليها

تحجيم المنفّذات وعمق الطوابير والضغط العكسي تحت حمل متواصل

الخيوط الافتراضية: أي الأحمال يستفيد وأيها يتراجع بشكل ملموس

الوحدة 6: القياس المرجعي وقرارات الضبط والسعة

قياسات JMH التي تصمد أمام الإحماء وحذف الشيفرة الميتة والضجيج

مئينات الكمون والإغفال المنسق والتقارير الصادقة لأصحاب المصلحة

حدود الحاويات وحصص المعالج وإعدادات JVM التلقائية ضمن cgroups

توثيق قرار الضبط ليتمكن الفريق من مراجعته لاحقاً استناداً إلى أدلة

المواد المقدمة

  • دليل الدورة وأمثلة شيفرة موثّقة وملاحظات مرجعية
  • بيئة معملية عملية ومستودعات بداية جاهزة
  • تمارين وقوائم تحقق وقوالب شيفرة قابلة لإعادة الاستخدام
  • شهادة إتمام من 4D
  • دعم فني بعد انتهاء البرنامج

خيارات التدريب

يمكن تقديم البرامج داخل مقر المؤسسة، أو عن بُعد، أو بصيغة مدمجة بحسب جدول الفريق وموقعه وأهداف التعلم. عندما يتضمن البرنامج شهادة أو اختباراً من جهة خارجية، تبقى قواعد الشهادة ورسومها خاضعة لسياسات الجهة المانحة، بينما تقدم 4D التدريب ودعم التحضير.

لماذا البعد الرابع

تقدّم 4D هذا البرنامج على أحمال مزوّدة بأدوات القياس لا على شرائح عرض: يفتعل المشاركون عمداً تسريبات وتزاحماً وتراجعاً في أزمنة التوقف، ثم يتعقبونها بالأدوات نفسها التي سيلجؤون إليها في الثالثة فجراً. وحين يتاح تزويدنا بها، ينطلق المدربون من سجلات جمع المهملات وتسجيلاتكم الخاصة، فتخرج قرارات الضبط من القاعة مطبَّقة بالفعل.

دورات ذات صلة

تطوير البرمجيات

أساسيات البرمجة بلغة Python

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

View course
تطوير البرمجيات

Python المتوسط وممارسات الشيفرة النظيفة

برنامج موجّه للمطورين الذين تعمل شيفرة Python لديهم لكن يصعب تغييرها. يغطي dataclasses والمولّدات والمزخرفات ومديري السياق وتلميحات الأنواع، ثم يطبّق خطوات إعادة الهيكلة التي تحوّل وحدة من تسعمئة سطر إلى وحدات صغيرة مختبَرة تحرسها أدوات black وruff وmypy.

View course
تطوير البرمجيات

أتمتة المهام المكتبية والبرمجة النصية بلغة Python

برنامج موجّه للفرق التي تهدر ساعات أسبوعية في أعمال متكررة على الملفات والجداول والتقارير. يقوم المشاركون بأتمتة هذه المهام باستخدام Python: معالجة الملفات دفعياً وجداول Excel وCSV واستدعاء واجهات REST وتنبيهات البريد والمهام المجدولة التي تعمل دون إشراف وتبلّغ بوضوح عند الفشل.

View course

تواصل مع البعد الرابع

خطط لمسار التدريب أو الاستشارة المناسب لفريقك.

شاركنا بعض التفاصيل وسنوجه طلبك نحو التدريب المؤسسي أو الاستشارات أو التقييم أو حلول فينييكس أو برنامج مخصص.