apache2 စွမ်းဆောင်ရည် ပိုမိုကောင်းမွန်အောင် လုပ်ဆောင်ခြင်း။

လူများစွာသည် apache2 ကို ၎င်းတို့၏ ဝဘ်ဆာဗာအဖြစ် အသုံးပြုကြသည်။ သို့သော်၊ ဆိုက်၏စာမျက်နှာတင်ခြင်းအမြန်နှုန်း၊ script များလုပ်ဆောင်ခြင်းအမြန်နှုန်း (အထူးသဖြင့် php) နှင့် CPU load တိုးလာခြင်းနှင့် RAM ပမာဏတိုးလာခြင်းတို့ကြောင့် လူအနည်းငယ်က ၎င်း၏စွမ်းဆောင်ရည်ကို ပိုမိုကောင်းမွန်အောင်ပြုလုပ်ရန် စဉ်းစားကြသည်။

ထို့ကြောင့်၊ အောက်ပါလက်စွဲစာအုပ်သည် အတွေ့အကြုံမရှိသေးသူ (သာမက) အသုံးပြုသူများကို ကူညီသင့်သည်။
အောက်ပါဥပမာအားလုံးကို Raspberry PI 3၊ Debian 9၊ Apache 2.4.38၊ PHP 7.3 တွင်အသုံးပြုခဲ့သည်။

ဒီတော့စတင်ရန်ကြကုန်အံ့။

1. အသုံးမပြုသော module များကိုပိတ်ခြင်း။

ပထမနည်းလမ်းမှာ သင်အသုံးမပြုသော module များကို ရိုးရှင်းစွာပိတ်ရန်ဖြစ်သည် ။

လက်ရှိအသုံးပြုနေသော module များစာရင်းကို command ဖြင့်ကြည့်ရှုနိုင်သည်-

apache2ctl -M

module ကို disable လုပ်ဖို့, command ကိုသုံးပါ:

a2dismod *название модуля*

ထို့ကြောင့်၊ module ကိုဖွင့်ရန်၊ command ကိုအသုံးပြုသည်-

a2enmod *название модуля*

အသုံးပြုတဲ့အခါ သတိပြုပါ။ a2dismod ပါ။၊ module ၏အမည်ကို စကားလုံး module ကိုယ်တိုင်မပါဘဲ ရေးရပါမည်။

ဥပမာအားဖြင့်၊ သင်သည် command output ၌ရှိနေလျှင်၊ apache2ctl -M ယင်းကိုမြင်လျှင် proxy_module၎င်းကို disable လုပ်ရန်၊ သင်သည် command ကိုအသုံးပြုရမည် - a2dismod ပရောက်စီ

စနစ်အများစု (ကိုယ်ရေးကိုယ်တာအတွေ့အကြုံမှ) တင်ဆောင်သည့် မော်ဂျူးများမှာ-

  • PHP၊ Ruby၊ Perl နှင့် အခြားသော scripting languages ​​များ
  • SSL ကို
  • ပြန်လည်ရေး
  • CGI

ဒါကြောင့် ဒီ module တွေ မလိုအပ်တဲ့ ကိစ္စတွေမှာ၊ ဒီ module တွေကို disable လုပ်ထားဖို့ အကြံပြုချင်ပါတယ်။

ထို့အပြင်၊ မည်သည့် module ကိုမဆိုပိတ်ထားပြီးနောက်၊ ငါ command − ကိုအသုံးပြုရန်အကြံပြုသည်။ apache2ctlconfigtestအသုံးပြုထားသောဆိုဒ်များ၏ဖွဲ့စည်းပုံကိုစစ်ဆေးမည်ဖြစ်ပြီး ၎င်းတို့အတွက် မသန်စွမ်းသော module များလိုအပ်ပါက၊ ၎င်းသည် error ပေးမည်ဖြစ်ပါသည်။

2. MPM(Multi-Processing Module) ကိုပြောင်းပြီး php-fpm ကိုသုံးပါ။

ပုံမှန်အားဖြင့်၊ တပ်ဆင်ပြီးနောက်၊ apache2 သည် စွမ်းဆောင်ရည်ကို သိသိသာသာ လျော့နည်းစေသော်လည်း တည်ငြိမ်မှုနှင့် လုံခြုံရေးကို တိုးတက်ကောင်းမွန်စေသည့် MPM Prefork (1 thread တစ်ခုလျှင် 1 thread) ကို အသုံးပြုသည်။

ဒါပေမယ့် စွမ်းဆောင်ရည်ကို ပိုကောင်းအောင်လုပ်ဖို့၊ ချိတ်ဆက်မှုတစ်ခုစီတိုင်းကို တစ်ခါတည်းသုံးနိုင်စေမယ့် MPM Worker ကို အသုံးပြုဖို့ အကြံပြုချင်ပါတယ်။

၎င်းကိုဖွင့်ရန်၊ အောက်ပါ command များကိုအသုံးပြုပါ။

a2dismod mpm_prefork  //Отключаем prefork
a2dismod php7.3  //Отключаем модуль php, который зависит от prefork
a2enmod mpm_worker  //Включаем worker

သို့သော် Worker ကိုအသုံးပြုသောအခါတွင် သင်သည် ပြဿနာတစ်ခုဖြစ်လာနိုင်သည်။ php7.3 module သည် Prefork module ပေါ်တွင်မူတည်သည်။

ဤပြဿနာကိုဖြေရှင်းရန်၊ php7.3-fpm module ကိုထည့်သွင်းပါ၊ php scripts များကိုလုပ်ဆောင်ရန်အသုံးပြုနိုင်သည်-

apt-get update && apt-get install php7.3-fpm  //Устанавливаем
systemctl enable php7.3-fpm && systemctl start php7.3-fpm  //Добавляем в автозагрузку и запускаем
a2enmod php7.3-fpm && a2enconf php7.3-fpm.conf  //Включаем модуль и конфиг для него

php-fpm ကိုအသုံးပြုခြင်းသည် apache2 လုပ်ငန်းစဉ်တွင်အသုံးပြုသည့် RAM ပမာဏကိုလည်း လျှော့ချနိုင်ပြီး php scripts များလုပ်ဆောင်ခြင်းကို အနည်းငယ်အရှိန်မြှင့်ပေးမည်ကို သတိပြုသင့်သည်။

၈။ နိဂုံး

ထို့ကြောင့် ဤကဲ့သို့သောရိုးရှင်းသောလုပ်ဆောင်ချက်များဖြင့် ကျွန်ုပ်တို့သည် စွမ်းဆောင်ရည်ကိုအကောင်းဆုံးဖြစ်အောင်လုပ်ဆောင်နိုင်ပြီး စက်ပေါ်ရှိဝန်ကိုလျှော့ချနိုင်သည် (ဤကိစ္စတွင်၊ RPI3)။

ချုံ့ခြင်းကိုဖွင့်ခြင်း (အမှန်တကယ်အသုံးဝင်သည်၊ သို့သော် အများစုကို မူရင်းအတိုင်းဖွင့်ထားပြီးဖြစ်သည်)၊ MPM ၏ ကန့်သတ်ချက်များ (configuration files) ကိုပြောင်းလဲခြင်း၊ HostnameLookups ကိုပိတ်ခြင်းစသည်ဖြင့်၊ ကန့်သတ်ချက်များ (configuration files) ကိုပြောင်းလဲခြင်း၊ ဤဆောင်းပါးသည် ကျွန်ုပ်အတွက် အလိုအပ်ဆုံးအရာများဖြစ်ကြောင်း ထင်ဟပ်ဖော်ပြရန် ကြိုးစားခဲ့ပြီး အခြားသူများကို ကူညီပေးလိမ့်မည်ဟု မျှော်လင့်ပါသည်။

source: www.habr.com

မှတ်ချက် Add