الرئيسية / لينكس / قيام المكون الإضافي llnode بالسماح لك بفحص عمليات Node.js

قيام المكون الإضافي llnode بالسماح لك بفحص عمليات Node.js

قيام المكون الإضافي llnode بالسماح لك بفحص عمليات Node.js

 

البرنامج المساعد llnode يتيح لك فحص عمليات Node.js ومقالب الأساسية

يضيف القدرة على فحص إطارات مكدس JavaScript ، والكائنات  والكود المصدري

Matheus Marchini:

واحدة من أكثر المشكلات شيوعًا التي قد يواجهها مطورو Node.js – سواء في الإنتاج أو أثناء التطوير – هي استثناءات غير معالج.

تحدث عندما يلقي رمزك خطأ ، ولا تتم معالجة هذا الخطأ بشكل صحيح.

هناك تباين في هذه المشكلة مع Promises ، على الرغم من أن المشكلة في هذه الحالة تكون أسوأ: إذا تم رفض الوعد ولكن لا يوجد معالج لهذا الرفض ،

فقد يدخل التطبيق في حالة غير محددة وقد يبدأ في التصرف بشكل غير صحيح.

قد يتعطل التطبيق أيضًا عندما يستخدم الكثير من الذاكرة.

يحدث هذا عادة عندما يكون هناك تسرب للذاكرة في التطبيق ، على الرغم من أننا عادةً لا يوجد لدينا تسرب للذاكرة الكلاسيكية في Node.js.

إذا حدث هذا مع العديد من الكائنات ، يمكننا استنفاد ذاكرتنا المتاحة بسرعة.

الذاكرة ليست هي المورد الوحيد الذي قد يستنفد. نظرًا للطبيعة غير المتزامنة لـ Node.js وكيفية قياسها لعدد كبير من الطلبات ،

فقد يبدأ التطبيق في النفاد على موارد أخرى مثل أوصاف الملفات المفتوحة وعدد من الاتصالات المتزامنة بقاعدة البيانات.

لا تعد الحلقات اللانهائية أمرًا شائعًا لأننا عادةً ما نلتقطها أثناء التطوير ، ولكن بين الحين والآخر يتمكن المرء من اجتياز اختباراتنا والدخول إلى خوادم الإنتاج لدينا.

مارشيني: لدى Node.js و V8 العديد من الأدوات والميزات المدمجة التي يمكن للمطورين استخدامها للعثور على المشكلات بشكل أسرع.

 

إذا كنت تستخدم وحدات أصلية في مشروعك ، فقد لا تمنحك الأدوات المدمجة في V8 رؤى كافية ، لأنها تركز فقط على مقاييس JavaScript.

يمكنك الحصول على النتيجة من هذه الأدوات وتحويلها إلى flamegraphs ، مما يسهل العثور على الوظائف التي تأخذها المزيد من الوقت لمعالجة.

 

لكن إحدى الأدوات التي أدهشها أكثر هي llnode.

Linux.com:

متى تريد استخدام شيء مثل llnode

Marchini: llnode مفيد عند تصحيح أخطاء الحلقات اللانهائية أو الاستثناءات غير المعروفة

أو مشكلات نفاد الذاكرة لأنه يتيح لك فحص حالة التطبيق الخاص بك عند تعطله

يمكنك إخبار Node.js ونظام التشغيل الخاص بك بأخذ تفريغ أساسي للتطبيق الخاص بك عند تعطله وتحميله إلى llnode.

سيقوم llnode بتحليل هذا التفريغ الأساسي ويعطيك معلومات مفيدة مثل عدد الكائنات التي تم تخصيصها في الكومة ،

تتمثل الميزة الأكثر إثارة للإعجاب في llnode في قدرتها على فحص الكائنات والوظائف: يمكنك معرفة المتغيرات المتاحة لوظيفة معينة ،

والنظر في رمز الوظيفة وفحص الخصائص التي تمتلكها كائناتك بقيمها المعنية.

llnode هو مكون إضافي لـ lldb ، ويستخدم مميزات lldb إلى جانب تلميحات مقدمة من V8 و Node.js لإعادة إنشاء كومة العملية.

هذه التقنية  التي تسمى تصحيح الأخطاء بعد الوفاة – ليست شيئًا جديدًا ، وقد كانت جزءًا من مشروع Node.js منذ عام 2012.

هذه تقنية شائعة يستخدمها مطورو C و C ++ ، ولكنها ليست ديناميكية كثيرة أوقات التشغيل دعمها.

مارشيني: لتثبيت llnode واستخدامه ، ستحتاج إلى تثبيت lldb على نظامك. إذا كنت تستخدم نظام التشغيل X ، فسيتم تثبيت lldb كجزء من Xcode.

على نظام Linux ، يمكنك تثبيته من مستودع التوزيع الخاص بك. نوصي باستخدام LLDB 3.9 أو الأحدث.

شاهد أيضاً

كيفية تثبيت برنامج device driver على لينكس

كيفية تثبيت برنامج device driver على لينكس

كيفية تثبيت برنامج device driver على لينكس 1. واجهات المستخدم إذا كنت جديدًا على نظام …

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *