لمراقبة ملفات تعريف الذاكرة في مسارات CI/CD، يجب عليك تتبع المقاييس الرئيسية التالية:
1. معدل جمع البيانات المهملة: يقيس مقدار الوقت المستغرق في أنشطة جمع البيانات المهملة مقارنة بإجمالي وقت التنفيذ. تشير القيمة الأقل إلى إدارة أفضل للذاكرة[1].
2. متوسط وقت الإيقاف المؤقت لجمع البيانات المهملة: يقيس متوسط الوقت الذي يتوقف فيه التطبيق مؤقتًا أثناء تجميع البيانات المهملة. تشير القيم المنخفضة إلى تأثير أقل على أداء التطبيق[1].
3. الحد الأقصى لوقت الإيقاف المؤقت لجمع البيانات المهملة: يقيس الحد الأقصى للوقت الذي يتوقف فيه التطبيق مؤقتًا أثناء تجميع البيانات المهملة. تشير القيم المنخفضة إلى تأثير أقل على أداء التطبيق[1].
4. معدل إنشاء الكائنات: يقيس معدل إنشاء الكائنات بواسطة التطبيق. يمكن أن تشير القيم الأعلى إلى تسرب الذاكرة أو الاستخدام غير الفعال للذاكرة[1].
5. ذروة حجم الكومة: يقيس الحد الأقصى لحجم الذاكرة التي يستخدمها التطبيق. يمكن أن تشير القيم الأعلى إلى تسرب الذاكرة أو الاستخدام غير الفعال للذاكرة[1].
6. عدد الخيوط: يقيس عدد المواضيع النشطة في التطبيق. يمكن أن تشير القيم الأعلى إلى زيادة استخدام الذاكرة[1].
7. حالات الموضوع: يقيس هذا توزيع المواضيع عبر حالات مختلفة (على سبيل المثال، قيد التشغيل، والسكون، والمحظور). يمكن أن يساعد هذا في تحديد المشكلات المتعلقة بالذاكرة[1].
8. مجموعات المواضيع: يقيس عدد مجموعات المواضيع في التطبيق. يمكن أن تشير القيم الأعلى إلى زيادة استخدام الذاكرة[1].
9. الذاكرة المهدرة: يقيس مقدار الذاكرة التي لا يتم استخدامها بكفاءة. يمكن أن تشير القيم الأعلى إلى تسرب الذاكرة أو الاستخدام غير الفعال للذاكرة[1].
10. عدد الكائنات: يقيس العدد الإجمالي للكائنات في التطبيق. يمكن أن تشير القيم الأعلى إلى تسرب الذاكرة أو الاستخدام غير الفعال للذاكرة[1].
11. عدد الفئات: يقيس عدد الفئات في التطبيق. يمكن أن تشير القيم الأعلى إلى زيادة استخدام الذاكرة[1].
من خلال تتبع هذه المقاييس، يمكنك تحديد المشكلات المتعلقة بالذاكرة في وقت مبكر من دورة حياة التطوير وتحسين استخدام الذاكرة لضمان أداء فعال للتطبيق.
الاستشهادات:[1] https://blog.heaphero.io/2018/07/10/micrometrics-for-ci-cd-pipeline/
[2] https://www.linkedin.com/pulse/cicd-pipeline-metrics-palani-thiyagarajan
[3] https://thenewstack.io/using-dora-metrics-to-optimize-ci-pipelines/
[4] https://docs.gitlab.com/ee/user/analytics/ci_cd_analytics.html
[5] https://codilime.com/blog/continious-monitoring-and-observability-in-devops/