Pri razvoju spletne strani z uporabo PHP, če so nekatere dinamične strani PHP po zagonu zelo počasne za dostop, lahko analiziramo ozko grlo spletne strani preko počasnih dnevnikov php-fpm.
Nastavitev PHP-FPM Slowlog nam omogoča, da vidimo, kateri PHP procesi so prepočasni in povzročajo težave s spletno stranjo.
Najprej preverite vse procese z zgornjim ukazom -c, da vidite naslov konfiguracijske datoteke, naložen preko php-fpm, kot je prikazano na spodnji sliki:
FPM konfiguracija
Parameter: -p, dinamično spremenite predpono --v ukazni vrstici
include=etc/php-fpm.d/*.conf, da vsebuje eno ali več datotek, če glob(3) obstaja (funkcija glob() vrne ime datoteke ali imenik, ki ustreza določenemu vzorcu)
PHP-FPM naloži podkonfiguracijsko datoteko, $pool spremenljivka se lahko uporabi v katerikoli direktivi in nadomesti ime ustreznega procesnega bazena. Na primer: tukaj[www]
Vklopi počasne hlode
vstopiti/usr/local/etc/php-fpm.dPodkonfiguracijska datoteka, poiščite www.conf (glede na vašo dejansko situacijo), PHP 5.3.3 in novejše različice so nastavljene takole:
; Časovna omejitev za vročitev ene same zahteve, po kateri sledi PHP povratna sled, bo ; preneseno v datoteko 'slowlog'. Vrednost '0' pomeni 'izklopljeno'. ; Razpoložljive enote: s(econds)(privzeto), m(inutes), h(naše) ali d(ays) ; Privzeta vrednost: 0 request_slowlog_timeout = 1 ; Dnevniška datoteka za počasne zahteve ; Privzeta vrednost: /usr/local/php/log/php-fpm.log.slow slowlog = /usr/local/php/log/php-fpm.log.slow ; Časovna omejitev za vročitev ene same zahteve, po kateri bo delavec začel postopek ; biti ubit. To možnost je treba uporabiti pri ini opciji 'max_execution_time' ; Iz nekega razloga ne ustavi izvajanja skripte. Vrednost '0' pomeni 'izklopljeno'. ; Razpoložljive enote: s(econds)(privzeto), m(inutes), h(naše) ali d(ays) ; Privzeta vrednost: 0 request_terminate_timeout = 10 sekund Opomba: request_terminate_timeout Neposredno prekinite proces, ki teče predolgo
request_slowlog_timeout Zapisujte datoteke, ki so prepočasne za izvajanje, v dnevnik
Od zdaj naprej lahko programske datoteke optimizirate glede na slow execution log /usr/local/php/log/php-fpm.log.slow!
|