Nejlepší konfigurace PHP-FPM – snadný a jednoduchý výpočet. PHP-FPM je FastCGI Process Manager alternativa pro PHP. PHP-FPM je vysoce konfigurovatelné snadnou úpravou nastavení fondu pro různé uživatele pomocí různých verzí PHP a mnoha dalších.
V této příručce se naučíte nejlepší konfigurační metodu PHP-FPM pomocí jednoduchého výpočtu, abyste předešli některým chybám uvedeným níže.
1. server reached pm.max_children setting, consider raising it 2. seems busy (you may need to increase pm.start_servers, or pm.min/max_spare_servers)
Krok 1:Specifikace serveru
Nejprve si poznamenejte specifikace vašeho serveru. Vaše jádra CPU a velikost RAM.
Například v této příručce předpokládejme, že máte 2vCPU a 16 GB RAM.
Nyní určete, kolik paměti můžete přidělit pro zpracování PHP. Můžeme předpokládat přibližně 10 GB RAM z 16 GB RAM, které můžeme přidělit pro zpracování PHP.
Krok 2:Kolik RAM spotřebuje každý proces PHP-FPM
Pro kontrolu průměrné paměti spotřebované pro běžící procesy PHP-FPM můžete provést následující příkaz.
ps -ylC php-fpm7.4 --sort:rss
Nahraďte verzi PHP verzí, která se používá pro vaši aplikaci.
Můžete získat výstup podobný tomu níže.

Poznamenejte si hodnoty pod RSS sloupec. Toto je paměť, kterou používá každý váš proces PHP-FPM.
Zde máme asi 20 MB RAM průměrně využívá každý podřízený proces PHP-FPM.
Krok 3:Výpočet hodnot pro děti PHP-FPM
Ve výchozím nastavení pm
hodnota bude nastavena na dynamic
, takže budete muset nakonfigurovat minimální a maximální rezervní servery a také maximální děti.
Změníme pm
hodnotu na ondemand
na náhradní servery se vytvoří automaticky podle poptávky.
pm = ondemand
Nyní můžeme vypočítat, kolik podřízených procesů lze vytvořit, aby aplikace běžela podle specifikací serveru.
Protože se chystáme přidělit 10 GB RAM pro zpracování PHP-FPM. Provedením příkazu v předchozím kroku jsme zjistili průměrnou hodnotu 20 MB konzumované každým dítětem.
PHP-FPM může využít maximální RAM / RAM spotřebovaná každým dítětem =Maximální podřízená hodnota pro PHP-FPM
Takže 10 000 /20 =500 . Můžete použít až 500 PHP-FPM potomků podle specifikací vašeho serveru. Vaše konfigurace PHP-FPM by tedy měla být…
pm.max_children = 500
Toto jsou 2 hodnoty, které je třeba upravit, aby PHP-FPM fungovalo na vašem serveru hladce.
Můžete také nakonfigurovat maximální počet požadavků na 500 pouhým zrušením komentáře u pm.max_requests
. To bude užitečné, pokud dojde k únikům paměti v knihovnách třetích stran.
Konečná konfigurace by měla vypadat takto.
pm = ondemand pm.max_children = 500 pm.max_requests = 500
Připravte se na roli odborníka na informační technologie s operačním systémem Linux
Závěr
Nyní jste se naučili, jak pomocí jednoduchých výpočtů konfigurovat hodnoty PHP-FPM podle specifikací vašeho serveru.
Díky za váš čas. Pokud narazíte na jakýkoli problém nebo zpětnou vazbu, zanechte prosím komentář níže.