تحسين عملية تكوين قالب VestaCP phpfcgid لاستنفاد الذاكرة المتعددة أخطاء 500

VestaCP بعد أن تحدد خدمة WEB قالب "phpfcgid" ، يتسبب عدد كبير من عمليات PHP-CGI في استنفاد الذاكرة بسرعة:

  • لقد نفدت الذاكرة بشكل أساسي لبضع ساعات بعد إعادة تشغيل الخادم.
  • لم يتم إنهاء عملية PHP-CGI الخاملة سابقًا ، وتقوم عملية واحدة بتشغيل ما يقرب من 1 عملية فرعية ، وتستهلك ما لا يقل عن 20 ميغا بايت من الذاكرة.

تستخدم في SSH htop الأمر (التثبيت مطلوب) ، يمكنك عرض هذه الحالة ▼

بعد أن تحدد خدمة WEB الخاصة بـ VestaCP قالب "phpfcgid" ، يتسبب عدد كبير من عمليات PHP-CGI في استنفاد الذاكرة بسرعة.

إذا تلقيت رسالة خطأ "-bash: htop: الأمر غير موجود" عند استخدام الأمر htop ، يرجى الاطلاع على هذا البرنامج التعليمي الخاص بالحل ▼

يتسبب عدد كبير من عمليات PHP-CGI في استنفاد الذاكرة بسرعة ، وتكمن المشكلة في VestaCPCentOSفي قالب phpfcgid ، يتم استخدام تكوين غير محسن.

  • VestaCP في قالب phpfcgid ، قم بتعيين عملية PHP-CGI واحدة لتشغيل ما يصل إلى 1 عملية فرعية.

طلب /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh السطر 13 من الملف:

export PHP_FCGI_CHILDREN=20

ومع ذلك ، فإن مثل هذا الإعداد ينتهك تحذير Apache في وثائق إدارة العمليات الفرعية لـ PHP:

إدارة عمليات PHP الفرعية (PHP_FCGI_CHILDREN) يجب دائمًا تعطيله باستخدام mod_fcgid ، والذي سيوجه طلبًا واحدًا فقط في كل مرة إلى عمليات التطبيق التي تم إنتاجها ؛ وبالتالي ، لن يتم استخدام أي عمليات فرعية تم إنشاؤها بواسطة PHP بشكل فعال. (بالإضافة إلى ذلك ، قد لا يتم إنهاء عمليات PHP الفرعية بشكل صحيح .) بشكل افتراضي ، ومع إعداد متغير البيئة PHP_FCGI_CHILDREN = 0، تم تعطيل إدارة عملية PHP الفرعية.

نظرًا لأنه في الوحدة النمطية mod_fcgid الخاصة بـ Apache ، يمكن لعملية PHP-CGI الاستجابة لطلب واحد فقط وتشغيلها في كل مرة ، فإن عملية PHP-CGI الفرعية غير فعالة للغاية.

لذلك ، يجب تعطيل إعدادات إدارة العمليات الفرعية لـ PHP مباشرة ▼

PHP_FCGI_CHILDREN=0

في الوقت نفسه ، إذا كان لديك بالفعل مضيف افتراضي تم إنشاؤه ، فستحتاج إلى تعديل ملفات التكوين لجميع مواقع الويب ▼

/home/用户名/web/域名/cgi-bin/fcgi-starter

بعد فتح ملف التكوين fcgi-starter ، أدخل التالي ▼

export PHP_FCGI_CHILDREN=20

تعديل إلى ▼

export PHP_FCGI_CHILDREN=0
  • بعد التعديل ، سيتم إيقاف تشغيل إدارة العمليات الفرعية لـ PHP في وضع mod_fcgid.
  • لن تؤدي عملية PHP-CGI بعد الآن إلى إنتاج عمليات فرعية ، والتي يمكن أن توفر الكثير من الذاكرة.

أيضًا ، لا يقوم VestaCP بتعيين آلية إنهاء للعمليات الخاملة:

  • ستستمر جميع عمليات PHP-CGI المنفذة حديثًا في استخدام الذاكرة حتى يتم إعادة تشغيل النظام.

لإصلاح ذلك ، ما عليك سوى إضافة ملف التكوين mod_fcgid /etc/httpd/conf.d/fcgid.conf أضف الإعدادات التالية في ▼

FcgidIdleTimeout 120
  • اضبط Apache ليقتل تلقائيًا عمليات PHP-CGI التي تكون خاملة لمدة دقيقتين (2 ثانية).

بعد اكتمال الإعداد ، أعد تشغيل خدمة Apache ▼

service httpd restart

بعد إعادة تشغيل الخدمة ، لن يتم عرض مئات عمليات PHP-CGI التي تم عرضها مسبقًا في HTOP.

عادةً ما تستهلك عملية PHP-CGI واحدة لمستخدم واحد من طراز Vesta CP ما بين 30 إلى 40 ميجا من الذاكرة ، وهو أمر مُرضٍ تمامًالينكسمتطلبات المضيف.

因此،网络 营销الناس يريدون القيام بعمل جيدتحسين محركات البحث، من المهم جدًا تحسين تكوين Vesta CP والقوالب ^ _ ^

يمكنك إلقاء نظرة على البرامج التعليمية التالية على لوحة VestaCP ▼

كيف يتم تكوين عملية المراقبة على لوحة Vesta CP لنظام CentOS 7؟

في السابق ، شاركت مدونة Chen Weiliang برنامجًا تعليميًا حول تثبيت وتكوين Monit على CentOS 6 ▼

ومع ذلك ، فإن تكوين برنامج مراقبة Monit في CentOS 7 يختلف إلى حد ما عن ذلك في CentOS 6 ، وهو ليس هو نفسه تمامًا.اذا أنت……

كيف يتم تكوين عملية المراقبة على لوحة Vesta CP لنظام CentOS 7؟الرابعة

مدونة Hope Chen Weiliang ( https://www.chenweiliang.com/ ) شارك "تحسين عملية تكوين قالب VestaCP phpfcgid ، استنفاد 500 خطأ من الذاكرة المتعددة" ، وهو أمر مفيد لك.

مرحبا بكم في مشاركة رابط هذه المقالة:https://www.chenweiliang.com/cwl-735.html

مرحبًا بك في قناة Telegram الخاصة بمدونة Chen Weiliang للحصول على آخر التحديثات!

🔔 كن أول من يحصل على "دليل استخدام أداة الذكاء الاصطناعي لتسويق محتوى ChatGPT" في الدليل العلوي للقناة! 🌟
📚 يحتوي هذا الدليل على قيمة كبيرة، 🌟هذه فرصة نادرة، لا تفوتها! ⏰⌛💨
شارك و اعجبك اذا اردت
مشاركتك وإعجاباتك هي دافعنا المستمر!

 

发表 评论

لن يتم نشر عنوان بريدك الإلكتروني. 必填 项 已 用 * 标注

انتقل إلى أعلى