Milten.ioMilten

تسريبات الذاكرة

اكتشاف تسرب الذاكرة من خلال التحليل التكراري لـ heap snapshots

المزايا

مقارنة تكرارية لـ heap snapshots
تتنقل الأداة بين الصفحات عدة مرات وتقارن heap snapshots بين التكرارات — لتأكيد نمو حقيقي في الذاكرة وليس تخصيصات لمرة واحدة.
أربع فئات لاكتشاف التسرب
تكشف كائنات الـ heap المتسربة، والمجموعات المتنامية (Array، Map، Set)، ومستمعي الأحداث المتراكمين، وعقد DOM المنفصلة التي تبقى في الذاكرة بعد التنقل.
تتبع دلتا الذاكرة على مستوى البايت
اعرف بالضبط كم بايت تتسرب من كل صفحة لكل تكرار، مع دلتا الحجم المحتجز والمسافة من جذر GC لكل كائن مشبوه.
زحف آلي متعدد الصفحات
تتنقل تلقائياً عبر صفحات موقعك وتُجري اكتشاف التسرب على كل منها — لاكتشاف التسربات عبر رحلة المستخدم بأكملها وليس على مسار واحد فقط.

كيف يعمل

الأدوات

ماسح السرعة
مصحح INP
اختبار ذاكرة التخزين المؤقت للعودة/التقدم
تسريبات الذاكرة
React Scan

FAQ

تحمّل الأداة صفحة وتأخذ heap snapshot، ثم تنتقل بعيداً وتعود عدة مرات، ثم تأخذ snapshot آخر. الكائنات التي تنمو باستمرار بين التكرارات تُحدد كتسربات — مع استبعاد التخصيصات لمرة واحدة.

عقد DOM المنفصلة هي عناصر HTML تمت إزالتها من الصفحة لكنها لا تزال محتجزة في الذاكرة بواسطة مراجع JavaScript. وهي مصدر شائع لتسرب الذاكرة في تطبيقات الصفحة الواحدة.

نعم. تتتبع الأداة عدد كل نوع من مستمعي الأحداث بين التكرارات. إذا زاد عدد المستمعين دون تنظيف، يتم تحديدها مع اسم الحدث المحدد وعقدة DOM المتأثرة.

بالتأكيد. تطبيقات SPA هي المصدر الأكثر شيوعاً لتسرب الذاكرة لأن المكونات تُركّب وتُفكّك دون إعادة تحميل كاملة للصفحة. نمط التنقل التكراري مصمم خصيصاً لهذا السيناريو.

يعرض التقرير نوع الكائن والحجم المحتجز ونمط النمو. تشمل الإصلاحات الشائعة تنظيف مستمعي الأحداث في دوال cleanup الخاصة بـ useEffect، وإلغاء المراجع لعقد DOM المحذوفة، ومسح الفواصل الزمنية أو المهلات.
نستخدم ملفات تعريف الارتباط

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