لينكس خادم ويب هاك -- كيفية كتابة سيناريو الآلي موازنة الحمل!
حسنا ، لقد تم يدويا إدارة خادم مخصص لهذا الموقع لسنوات الأخيرة (2) أو نحو ذلك ولكنني وجدت طريقة أفضل لأتمتة الملقم بحيث أنه لا ينزل من أي وقت مضى بسبب الحمل الزائد.
واحدة من المشاكل المشتركة في الخادمة هو حقيقة أن الحمل يمكن أن يخرج عن نطاق السيطرة وخادم الويب الخاص بك على طول معها ، مما يسبب لك الصعب إعادة تشغيل الملقم.
وهناك طريقة أفضل للتعامل مع هذه المشكلة خلال الحمل هو اغلاق خادم HTTPD (خادم الويب) الخاص بك قبل تحميل الخادم يحصل على شيء ما يقرب من 2 إلى 5.
عند تحميل الملقم تحت قطرات 2 ، والنصي ثم يمكن إعادة تشغيل الملقم.
قبل القيام بذلك ، يمكنك توفير الكثير من الصداع وخاصة اذا كان لديك "ديجيد" أو ببساطة الحاجة الموقع تصل إلى أقصى حد ممكن.
صدقوا أو لا تصدقوا ، وليس هناك النصي أن يفعل هذا على الانترنت متاح مجانا لذلك قدمت واحدة بالنسبة لجميع المواقع لك :
#!/bin/bash
loadavg=`uptime | awk '{print $9}'`
RESTART="/sbin/service httpd restart"
# bash doesn't understand floating point
# so convert the number to an interger
thisloadavg=`echo $loadavg|awk -F \. '{print $1}'`
if [ "$thisloadavg" -ge "5" ]; then
echo "Busy - Load Average $loadavg ($thisloadavg) "
httpd -k stop
elif [ "$thisloadavg" -le "2" ]; then
echo "Okay - Load Average $loadavg ($thisloadavg) "
pgrep httpd
if [ $? -ne 0 ] # if apache not running
then
# restart apache
$RESTART
echo "restart!"
else
echo "no restart!"
fi
else
echo "waiting...!"
fi
إنقاذ هذا الرمز في مكان ما مثل / الجذر / checkload.sh.
ثم يضاف ما يلي إلى وظيفتك كرون (/ الخ / cron.d / سا التحديث لفيدورا لينكس)
* 1 * * * * الجذر ش / الجذر / checkloadsh
سيتم تشغيل هذا البرنامج النصي كل 1 دقيقة للتأكد من الحمل وإذا كان الحمل مرتفعة جدا ، وسوف خادم الويب يمكن إيقاف ، لو كان أقل من 2 وخادم الويب هو خارج ، فإنه بدوره على خادم الويب.
هناك الكثير من الأشياء التي يمكن أن تسوء مع خدمة الويب الخاص بك إذا كان من خارج حركة المرور أو غيرها ، ولكن هذا السيناريو سوف تكون في متناول اليد ، وأنا أوصي به لأي شخص يجد صعوبة مع خدمة عالية الجودة للتحميل على شبكة الإنترنت أن تنخفض في كثير من الأحيان. (مثل هذا بلوق)
الآن ، انتقل تثبيت هذا البرنامج ، وأنك لن تقلق على خادم الويب يموتون من الحمولة عالية مرة أخرى إلى الأبد.
يمكنك أيضا تغيير قيمة "2" في رمز لشيء ما مثل أعلى 5 أو 10 ، والتي سوف تنتظر وقتا أطول لاغلاق خادم الويب حالا إذا تحميل يذهب عالية.
أنا لم أكتب رمز من الصفر ، وأنا أخذت 2-3 نصوص مختلفة مختلطة وذلك حتى هنا في الموارد واستخدامها للرمز :
تحميل سيناريو متوسط -- هذا واحد هو هيكل عظمي الرئيسي اعتدت
الاختيار / إعادة سيناريو HTTPD -- هذا واحد واستخدامها للتحقق من خادم HTTPD قبل محاولة إعادة تشغيله.
كرون جدولة المهام -- وأظل متناسيا بأن معظم اليسار هو عدد الدقائق ، الرتق.
ملاحظة -- وهذا هو الحل البسيط للحفاظ على خادم مخصص يعمل على الخادم 1 (هذا مثل واحد) ، اذا كنت تستطيع تحمل المزيد من الملقمات ، سوف تحتاج إلى اللجوء إلى تحميل موازنة الملقمات "" ، لموازنة هنا يشير إلى توازن داخل 1 الخادم.











