تغییر mpm آپاچی به mpm worker در دایرکت ادمین

تغییر mpm آپاچی به mpm worker در دایرکت ادمین

تغییر mpm آپاچی به mpm worker در دایرکت ادمین :

از دیگر مشکلات سرور مجازی های وابسته به دایرکت ادمین، مصرف بالای رم سرور توسط وب سرور آپاچی میباشد

شما در مقاله زیر علت دقیق و بروز این مشکل را در نتیجه مصرف Ram در سرور مجازی لینوکس خواهید خواند.

و اما معماری مدل پردازشی MPM Prefork  در وب سرور آپاچی ، یکی از مهم ترین دلیل بروز افزایش بی رویه تعداد pid های

وب سرور آپاچی در دایرکت ادمین  و در نتیجه مصرف رم و حافظه سرور در هنگام وجود کانکشن های بطور هم زمان ،

یوزر های آنلاین زیاد و به طور کلی concurrency در سرور لینوکس می باشد .

یکی از روش های ساده برای حل مشکل میتوانید مدل پردازش Prefork را به MPM Worker تغییر دهید.

با این مدل پردازش سریع و کم مصرف میتوانید منابع سرور مجازی خود را آزاد کنید.

پس برای انجام موارد بالا مقاله زیر را با دقت بخوانید.

بسیار خب برای تغییر دادن MPM Prefork به MPM Worker در دایرکت ادمین باید CB 1.X و آپاچی نسخه 2.2 حتما

باید اجرا کننده و handler نسخه php  را از cli به cgi تغییر دهید و suPHP را در سرور مجازی فعال کنید.

بعد از آن که php و apache را کامپایل کردید موارد زیر را با دقت عمل کرده و دستورات زیر را وارد کنید :

[su_code]

cd /usr/local/directadmin/custombuild

./build clean

./build update

mkdir -p custom/ap/

cp -fp configure/ap2/configure.apache custom/ap2/

[/su_code]

اکنون فایل custom/ap2/configure.apache را تغییر داده  و مقدار “–with-mpm=worker”  را در انتهای آن وارد میکنیم :

[su_code]

vi custom/ap2/configure.apache

“–with-mpm=worker” \

[/su_code]

سپس بعد از ذخیره فایل فوق با اجرای دستورات زیر php و apache را از اول build میکنیم :

[su_code]

cd /usr/local/directadmin/custombuild

./build apache

./build php n

[/su_code]

بعد از آن که مراحل بالا را با موفقیت به پایان رساندید وب سرور مجازی خود را ریستارت کرده و

مشخصات MPM وب سرور را بررسی کنید :

[su_code]

service httpd restart

httpd -V

[/su_code]

و خروجی که دریافت میکنید همانند دستور زیر میباشد :

[su_code]

Architecture: 64-bit

Server MPM: worker

[/su_code]

و اما در صورتی که میخواهید تغییران در فایل کانفیگ شده MPM مرتبط به وب سرور آپاچی را ذخیره کنید،

فایل زیر را با دستور زیر ویرایش دهید :

[su_code]

vi /etc/httpd/conf/extra/httpd-mpm.conf

StartServers 2

MinSpareThreads 25

MaxSpareThreads 75

ThreadsPerChild 25

MaxRequestWorkers 150

MaxConnectionsPerChild 0

[/su_code]

سپس بعد از آن که تغییرات وب سرور آپاچی اعمال کردید را دوباره راه اندازی کنید.

اگر تعداد کانکشن های متصل شده به سرور مجازی شما زیاد باشد در مرحله اول تمامی Proccess ها را kill کرده و دوباره

وب سرور را با  استفاده از دستور زیر Start کنید :

[su_code]

killall httpd

service httpd start

[/su_code]