سلام و خسته نباشید .
اقا راهی داره که این اپاچی اتوماتیک عین بقیه وب سرور های ریست بشه وقتی بهش فشار میاد ؟
بدبخت کرده ما رو این اپاچی . واقعا وب سرور داغونی هست .
نمایش نسخه قابل چاپ
سلام و خسته نباشید .
اقا راهی داره که این اپاچی اتوماتیک عین بقیه وب سرور های ریست بشه وقتی بهش فشار میاد ؟
بدبخت کرده ما رو این اپاچی . واقعا وب سرور داغونی هست .
Apache اگر درست کانفیگ بشه داغون نیست;)
امکانش هست
با یک برنامه تعداد proc. های اپاچی رو چک کنید و اگر زیاد شد دستور restart رو بدید.
یه جورایی همه بچه های این انجمن این حرف رو میزنن اما واقعیتش ما با بهترین کانفیگ هم نتیجه ای نگرفتیم .نقل قول:
Apache اگر درست کانفیگ بشه داغون نیست;)
با چه برنامه ای لطفا معرفی کنید !نقل قول:
با یک برنامه تعداد proc. های اپاچی رو چک کنید و اگر زیاد شد دستور restart رو بدید.
یعنی دستور ریست رو دستی بدم ؟ با اینکه همون برنامه ای که عرض میکنید اتوماتیک این کار رو انجام میده ؟
برنامه ای که قراره بنویسید...
با چند خط کد براحتی میتونید این کارو انجام بدید.
بله "
بابا اگه من در این حد حرفه ای بودم مزاحم وقت شما نمی شدم :71:
یه اسکریپت اماده دیده بودم که این کار رو انجام میداد ؟ کسی از دوستان ادرس این تاپیکو نداره ؟
دوست عزیز از طریق cronjob اینکار رو بکنید: اینرو بزنید هر 1 ساعت رسیت میشه
0 60 * * * /etc/init.d/httpd restart >/dell/null 2>&1
این بش فایل هر موقع apache دان بشه یا مشکلی براش پیش بیاد رستارت می کنه apache رو.
فقط یک کرون جاب ادد کنید به این شکل
کد:*/5 * * * * /path/to/1.sh >/dev/null 2>&1
یه زمانی ram سرور پر میشه و چک کردن وجود process به تنهایی کافی نیست، چون ممکنه process وجود داشته باشه ولی بدلیل کمبود منابع سرور پاسخگو نباشه ، فکر کنم این بیشتر کمک کنه :
if [ ! `curl -sI http://$1 |awk 'NR==1 {print $2}'` == 200 ];then
killall -9 httpd php
/etc/init.d/httpd start
fi
تو یک فایل ذخیره کن ، و به این شکل اجرا کن:
sh FILENAME domainnametocheck
مثلا اگه روی سرورت wht.ir هاست شده باید به این شکل اجرا کنی :
sh FILENAME wht.ir
در ضمن response در نظر گرفته شده ۲۰۰ است ، در صورتی که صفحه به جایی redirect میشه باید این response code رو عوض کنی ;)
تشکر دوستان فقط باید برای هر کدوم کورن جاب بسازید ...