Optimizacija VestaCP Predloga phpfcgid Konfiguracijski proces izčrpanost več pomnilnikov 500 napak

VestaCP Ko spletna storitev izbere predlogo "phpfcgid", veliko število procesov PHP-CGI povzroči hitro praznjenje pomnilnika:

  • V bistvu mi je nekaj ur po ponovnem zagonu strežnika zmanjkovalo pomnilnika.
  • Prej nedejaven proces PHP-CGI se ne uniči in en proces izvaja skoraj 1 podprocesov, ki porabijo vsaj 20 MB pomnilnika.

Uporablja se v SSH htop ukaz (potrebna je namestitev), si lahko ogledate to stanje ▼

Ko spletna storitev VestaCP izbere predlogo "phpfcgid", veliko število procesov PHP-CGI povzroči, da se pomnilnik hitro izčrpa.

Če se prikaže sporočilo o napaki »-bash: htop: ukaz ni bil najden«, ko uporabite ukaz htop, glejte to vadnico za rešitev ▼

Veliko število PHP-CGI procesov povzroča hitro praznjenje pomnilnika, problem je v VestaCPCentOSV predlogi phpfcgid je uporabljena neoptimizirana konfiguracija.

  • VestaCP v predlogi phpfcgid nastavite 1 proces PHP-CGI za izvajanje do 20 podrejenih procesov.

glej /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh 13. vrstica datoteke:

export PHP_FCGI_CHILDREN=20

Vendar pa takšna nastavitev krši opozorilo Apache v dokumentaciji za upravljanje podprocesov PHP:

Upravljanje podrejenih procesov PHP (PHP_FCGI_CHILDREN) mora biti vedno onemogočen z mod_fcgid, ki bo samo eno zahtevo naenkrat usmeril k procesom aplikacije, ki jih je ustvaril; zato podrejeni procesi, ki jih ustvari PHP, ne bodo učinkovito uporabljeni. (Poleg tega podrejeni procesi PHP morda ne bodo pravilno prekinjeni). .) Privzeto in z nastavitvijo spremenljivke okolja PHP_FCGI_CHILDREN=0, upravljanje podrejenega procesa PHP je onemogočeno.

Ker se lahko v Apachejevem modulu mod_fcgid proces PHP-CGI odzove le na eno zahtevo in se izvaja naenkrat, je podrejeni proces PHP-CGI zelo neučinkovit.

Zato je treba nastavitve za upravljanje podprocesov PHP neposredno onemogočiti ▼

PHP_FCGI_CHILDREN=0

Hkrati, če že imate ustvarjenega virtualnega gostitelja, morate spremeniti konfiguracijske datoteke vseh spletnih mest ▼

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

Ko odprete konfiguracijsko datoteko fcgi-starter, vstavite naslednje ▼

export PHP_FCGI_CHILDREN=20

Spremeni v ▼

export PHP_FCGI_CHILDREN=0
  • Po spremembi bo upravljanje podprocesov PHP izklopljeno v načinu mod_fcgid.
  • Proces PHP-CGI ne bo več ustvaril podrejenih procesov, kar lahko prihrani veliko pomnilnika.

Prav tako VestaCP ne nastavi mehanizma prekinitve za nedejavne procese:

  • Vsi na novo izvedeni procesi PHP-CGI bodo še naprej uporabljali pomnilnik, dokler se sistem znova ne zažene.

Če želite to popraviti, preprosto dodajte konfiguracijsko datoteko mod_fcgid /etc/httpd/conf.d/fcgid.conf V ▼ dodajte naslednje nastavitve

FcgidIdleTimeout 120
  • Nastavite Apache, da samodejno zaustavi procese PHP-CGI, ki so nedejavni 2 minuti (120 sekund).

Ko je nastavitev končana, znova zaženite storitev Apache ▼

service httpd restart

Po ponovnem zagonu storitve na stotine procesov PHP-CGI, ki so bili prej prikazani v HTOP, ne bodo več prikazani.

Običajno en sam proces PHP-CGI za enega uporabnika Vesta CP porabi od 30 do 40 milijonov pomnilnika, kar popolnoma zadovoljiLinuxzahteve gostitelja.

zato营销ljudje želijo biti dobriSEO, je zelo pomembno optimizirati konfiguracijo Vesta CP in predlog ^_^

Ogledate si lahko naslednje vadnice na plošči VestaCP ▼

Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ ) je delil "Optimiziranje procesa konfiguracije predloge VestaCP phpfcgid Multiple Memory Exhaustion 500 Errors", ki vam je v pomoč.

Dobrodošli, da delite povezavo tega članka:https://www.chenweiliang.com/cwl-735.html

Dobrodošli na kanalu Telegram spletnega dnevnika Chena Weilianga, kjer boste prejeli najnovejše posodobitve!

🔔 Bodite prvi, ki boste prejeli dragocen »Vodnik za uporabo orodja AI za vsebinski marketing ChatGPT« v zgornjem imeniku kanala! 🌟
📚 Ta vodnik ima ogromno vrednosti, 🌟To je redka priložnost, ne zamudite je! ⏰⌛💨
Delite in všečkajte, če vam je všeč!
Vaše deljenje in všečki so naša stalna motivacija!

 

发表 评论

Vaš e-poštni naslov ne bo objavljen. 必填 项 已 用 * Oznaka

滚动 到 顶部