Optimalizace procesu konfigurace šablony VestaCP phpfcgid vyčerpání více paměti 500 chyb

VestaCP Poté, co webová služba vybere šablonu „phpfcgid“, velký počet procesů PHP-CGI způsobí rychlé vyčerpání paměti:

  • V podstatě mi docházela paměť na několik hodin po restartování serveru.
  • Dříve nečinný proces PHP-CGI není zabit a jeden proces spouští téměř 1 podprocesů, které spotřebovávají alespoň 20 milionů paměti.

Používá se v SSH htop (vyžaduje instalaci), můžete tento stav zobrazit ▼

Poté, co webová služba VestaCP vybere šablonu „phpfcgid“, velký počet procesů PHP-CGI způsobí rychlé vyčerpání paměti.

Pokud se při použití příkazu htop zobrazí chybová zpráva „-bash: htop: příkaz nenalezen“, podívejte se na řešení v tomto návodu ▼

Velké množství PHP-CGI procesů způsobuje rychlé vyčerpání paměti Problém je ve VestaCPCentOSV šabloně phpfcgid je použita neoptimalizovaná konfigurace.

  • VestaCP v šabloně phpfcgid nastavte 1 proces PHP-CGI pro spuštění až 20 podřízených procesů.

Vidět /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh Řádek 13 souboru:

export PHP_FCGI_CHILDREN=20

Takové nastavení však porušuje varování Apache v dokumentaci pro správu subprocesů PHP:

Správa podřízených procesů PHP (PHP_FCGI_CHILDREN) by měl být vždy deaktivován pomocí mod_fcgid, který bude směrovat vždy pouze jeden požadavek na aplikační procesy, které vytvořil, takže žádné podřízené procesy vytvořené PHP nebudou efektivně využity. (Navíc podřízené procesy PHP nemusí být správně ukončeny .) Ve výchozím nastavení as nastavením proměnné prostředí PHP_FCGI_CHILDREN=0, Správa podřízených procesů PHP je zakázána.

Protože v modulu mod_fcgid Apache může proces PHP-CGI reagovat pouze na jeden požadavek a spustit současně, je podřízený proces PHP-CGI velmi neefektivní.

Nastavení pro správu podprocesů PHP by proto mělo být zakázáno přímo ▼

PHP_FCGI_CHILDREN=0

Zároveň, pokud již máte vygenerovaného virtuálního hostitele, musíte upravit konfigurační soubory všech webových stránek ▼

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

Po otevření konfiguračního souboru fcgi-starter vložte následující ▼

export PHP_FCGI_CHILDREN=20

Upravit na ▼

export PHP_FCGI_CHILDREN=0
  • Po úpravě bude správa podprocesů PHP vypnuta v režimu mod_fcgid.
  • Proces PHP-CGI již nebude plodit podřízené procesy, což může ušetřit spoustu paměti.

VestaCP také nenastavuje mechanismus ukončení pro nečinné procesy:

  • Všechny nově spuštěné procesy PHP-CGI budou nadále využívat paměť, dokud nebude systém restartován.

Chcete-li to opravit, stačí přidat konfigurační soubor mod_fcgid /etc/httpd/conf.d/fcgid.conf Přidejte následující nastavení do ▼

FcgidIdleTimeout 120
  • Nastavte Apache tak, aby automaticky zabil PHP-CGI procesy, které jsou nečinné po dobu 2 minut (120 sekund).

Po dokončení nastavení restartujte službu Apache ▼

service httpd restart

Po restartu služby se již nebudou zobrazovat stovky procesů PHP-CGI, které byly dříve zobrazeny v HTOP.

Jeden proces PHP-CGI pro jednoho uživatele Vesta CP obvykle spotřebuje 30 až 40 milionů paměti, což plně vyhovujeLinuxpožadavky na hostitele.

proto,网络 营销lidé chtějí dělat dobřeSEO, je velmi důležité optimalizovat konfiguraci Vesta CP a šablon ^_^

Na panelu VestaCP ▼ se můžete podívat na následující výukové programy

Blog Hope Chen Weiliang ( https://www.chenweiliang.com/ ) sdílí „Optimalizace VestaCP phpfcgid Template Configuration Process Multiple Memory Exhaustion 500 Errors“, což je pro vás užitečné.

Vítejte u sdílení odkazu na tento článek:https://www.chenweiliang.com/cwl-735.html

Vítejte na telegramovém kanálu blogu Chen Weiliang, kde získáte nejnovější aktualizace!

🔔 Buďte první, kdo získá cenný „Průvodce používáním nástroje AI pro obsahový marketing ChatGPT“ v hlavním adresáři kanálu! 🌟
📚 Tento průvodce má obrovskou hodnotu, 🌟Toto je vzácná příležitost, nenechte si ji ujít! ⏰⌛💨
Sdílejte a lajkujte, pokud se vám líbí!
Vaše sdílení a lajky jsou naší neustálou motivací!

 

发表 评论

Vaše e-mailová adresa nebude zveřejněna. 必填 项 已 用 * 标注

滚动 到 顶部