إتقان Node.js في الإنتاج مع PM2 | أصلي، ترجم بواسطة AI
إذا كنت قد بنيت تطبيقًا Node.js في أي وقت مضى و wondered كيف يمكنك الحفاظ على تشغيله بشكل سلس في الإنتاج، فقد كنت قد واجهت PM2. إذا لم تكن قد واجهته، دعني أقدّم إليك هذا المبدع. PM2، اختصارًا لـ Process Manager 2، هو أداة مفتوحة المصدر مصممة لجعل إدارة تطبيقات Node.js في الإنتاج سهلة تمامًا - مع موازن حمولات مدمج، وميزات مراقبة، وإعادة التوزيع بدون انقطاع. دعنا نغوص في ما يجعل PM2 رائعًا و لماذا قد يصبح أداتك المفضلة.
ما هو PM2؟
في جوهره، PM2 هو مدير عمليات لأتطبيقات Node.js. افهمه كحارس يحافظ على بقاء تطبيقك على قيد الحياة، ويعيد تشغيله إذا انهار، ويساعدك في توسيعه بسهولة. تم إنشاؤه أصلاً من قبل Unitech، والآن يتم الحفاظ عليه من قبل مجتمع مفتوح المصدر حيوي، PM2 قد كسبت شهادتها مع أكثر من 45 ألف نجم على GitHub (حتى أوائل عام 2025) و سمعة في الموثوقية.
على عكس تشغيل node app.js
في شريط الأوامر الخاص بك و صليب أصابعك، PM2 يأخذ السيطرة على دورة حياة تطبيقك. إنه مثل إعطاء تطبيقك Node.js مساعدًا شخصيًا يدير الأمور المملة - حتى يمكنك التركيز على الكود.
لماذا PM2 يبرز
هنا هو الأمر: Node.js هو واحد الملتفاف من طبيعته، وهو رائع للعمليات الخفيفة، غير المتلفة لل I/O ولكن يمكن أن يكون عائقًا تحت حركة المرور الثقيلة. PM2 يحل هذا مع بعض الميزات القاتلة:
-
إدارة العمليات سهلة مع أمر واحد مثل
pm2 start app.js
، يكون تطبيقك قيد التشغيل كعملية مدارة. إذا انهار (نعم، يحدث ذلك)، PM2 يعيد تشغيله تلقائيًا. يمكنك إيقاف أو إعادة تشغيل أو حذف العمليات باستخدام أوامر بسيطة مثلpm2 stop app
أوpm2 delete app
. لا تحتاج إلى رعاية. -
موازنة الحمولات المدمجة هنا حيث PM2 يبرز. باستخدام وضع التجمعات الخاص بها (
pm2 start app.js -i max
), PM2 يرفع عدة نسخ من تطبيقك عبر نواة المعالج الخاصة بك. ثم يوزن الحمولات بينهم. لا حاجة إلى أداة منفصلة مثل Nginx لتوزيع حركة المرور - PM2 يدير ذلك من الصندوق. -
إعادة التوزيع بدون انقطاع هل كنت تخاف من نشر تحديث لأنه سيطرد المستخدمين من تطبيقك؟ PM2 يغطيك مع
pm2 reload app
. يعيد تشغيل عمليات تطبيقك واحدة تلو الأخرى، مما يضمن عدم وجود انقطاع للمستخدمين. ناعم مثل الزبدة. -
المراقبة والسجلات تشغيل
pm2 monit
يعطي لك لوحة تحكم حية لاستهلاك المعالج، واستهلاك الذاكرة، وإعادة التشغيل. تحتاج إلى التنقيب في الأخطاء؟pm2 logs
يجلب سجلات تطبيقك مباشرة إلى شريط الأوامر الخاص بك. مثل وجود برج تحكم لأتطبيقك. -
Scripts التشغيل تريد PM2 أن يبدأ تلقائيًا بعد إعادة تشغيل الخادم؟ فقط قم بتشغيل
pm2 startup
، ويولد نصًا لإعادة تشغيل تطبيقاتك عند التشغيل. جاهز للانتاج في دقائق.
البدء مع PM2
هل أنت مستعد لتجربة؟ إنه سهل جدًا التثبيت:
- تثبيت PM2 عالميًا
افتح شريط الأوامر الخاص بك و قم بتشغيل:
npm install pm2 -g
هذا يثبث PM2 عالميًا حتى يمكنك استخدامه في أي مكان.
- بدء تطبيقك
انتقل إلى مجلد المشروع الخاص بك و قم بتشغيل:
pm2 start app.js
Boom— الآن تطبيقك مدار من قبل PM2. تريد استخدام وضع التجمعات؟ حاول:
pm2 start app.js -i max
يشير العلم
max
إلى PM2 لاستخدام جميع النواة المعالج المتاحة. -
تحقق من الحالة قم بتشغيل
pm2 list
لرؤية جميع عملياتك الجارية، حالةها، واستهلاك الموارد. - استكشاف النظام البيئي
PM2 ليس مجرد حصان واحد. يدعم ملفات التكوين (مثل
ecosystem.config.js
) لأتطبيقات أكثر تعقيدًا، ويدمج مع Keymetrics لمراقبة متقدمة، ويعمل حتى مع تطبيقات غير Node.js إذا كنت تشعر بالتحريض.
من هو من أجله؟
PM2 مثالي لأي شخص يعمل Node.js في الإنتاج - سواء كنت مطورًا فرديًا تنشر مشروعًا جانبيًا أو جزء من فريق يدير API حركة المرور العالية. إنه خفيف، و مفهوم، و لا يثقلك مع خطوات التثبيت المعقدة. الشركات الصغيرة و الشركات الكبيرة على حد سواء تسبح به.
بعض النصائح المهنية
- وضع المراقبة: استخدم
pm2 start app.js --watch
أثناء التطوير لإعادة تشغيل تطبيقك تلقائيًا عند تغيير الملفات. - حدود الذاكرة: قم بتعيين سقف الذاكرة مع
--max-memory-restart 200M
لإعادة تشغيل تطبيقك إذا أصبح جائعًا جدًا. - تنظيف السجلات: قم بتشغيل
pm2 flush
لتفريغ السجلات القديمة و الحفاظ على الأمور نظيفة.
الخاتمة
PM2 هو من الأدوات التي، بعد أن تبدأ في استخدامها، تسأل نفسك كيف كنت تعيش بدونها. يأخذ الفوضى في إدارة عمليات Node.js ويحولها إلى تجربة مريحة، بدون تكلفة. سواء كنت توسع خدمة ميكرو، أو الحفاظ على تطبيق ويب على قيد الحياة، أو مجرد التلميع مع مشروع هواية، PM2 يدعمك.
فأذهب إلى صفحة GitHub PM2، أعطها نجمًا، و حاولها. سيشكرك تطبيقاتك Node.js - و سيشكرك عقلك.