När man utvecklar en webbplats med PHP, om vissa PHP-dynamiska sidor är mycket långsamma att komma åt efter lansering, kan vi analysera webbplatsens flaskhals genom PHP-FPM-långsamma loggar.
Inställningen för PHP-FPM slowlog låter oss se vilka PHP-processer som är för långsamma och orsakar problem med webbplatsen.
Kontrollera först alla processer via kommandot top -c för att se konfigurationsfiladressen som laddas av php-fpm, som visas i figuren nedan:
FPM-konfiguration
parameter: -p, dynamiskt modifiera --prefix i kommandoraden
include=etc/php-fpm.d/*.conf för att innehålla en eller flera filer om glob(3) finns (glob()-funktionen returnerar ett filnamn eller en katalog som matchar det angivna mönstret)
PHP-FPM laddar en delkonfigurationsfil, $pool variabel kan användas i vilket direktiv som helst, och den ersätter motsvarande namn på processpoolen. Till exempel: här[www]
Slå på långsamma stockar
inträda/usr/local/etc/php-fpm.dSubkonfigurationsfil, hitta www.conf (beroende på din faktiska situation), PHP 5.3.3 och senare versioner är inställda enligt följande:
; Tidsgränsen för att leverera en enskild förfrågan, varefter en PHP-backtrace kommer att vara ; Dumpad till filen 'slowlog'. Ett värde på '0:or' betyder 'fel'. ; Tillgängliga enheter: s(econds)(default), m(inutes), h(ours) eller d(ays) ; Standardvärde: 0 request_slowlog_timeout = 1:or ; Loggfilen för långsamma förfrågningar ; Standardvärde: /usr/local/php/log/php-fpm.log.slow slowlog = /usr/local/php/log/php-fpm.log.slow ; Tiden för att lämna en enskild begäran varefter arbetsprocessen kommer att ; omkomma. Detta alternativ bör användas när du använder 'max_execution_time' ini-alternativet ; stoppar inte skriptexekveringen av någon anledning. Ett värde på '0' betyder 'av'. ; Tillgängliga enheter: s(econds)(default), m(inutes), h(ours) eller d(ays) ; Standardvärde: 0 request_terminate_timeout = 10-tal Obs: request_terminate_timeout Avsluta en process som har pågått för länge direkt
request_slowlog_timeout Skriv filer som är för långsamma att köra till loggen
Från och med nu kan du optimera programfilerna enligt slow execution-loggen /usr/local/php/log/php-fpm.log.slow!
|