Când dezvoltăm un site folosind PHP, dacă unele pagini dinamice PHP sunt foarte lente de accesat după lansare, putem analiza blocajul site-ului prin jurnale lente php-fpm.
Setarea PHP-FPM Slowlog ne permite să vedem care procese PHP sunt prea lente și cauzează probleme site-ului.
Mai întâi, verificați toate procesele prin comanda top -c pentru a vedea adresa fișierului de configurare încărcată de php-fpm, așa cum este ilustrat în figura de mai jos:
Configurația FPM
parametru: -p, modifică dinamic --prefixul în linia de comandă
include=etc/php-fpm.d/*.conf pentru a conține unul sau mai multe fișiere dacă există glob(3) (funcția glob() returnează un nume de fișier sau un director care corespunde modelului specificat)
PHP-FPM încarcă un fișier sub-configurație, $pool variabilă poate fi folosită în orice directivă și va înlocui numele corespunzător al pool-ului de procese. De exemplu: aici[www]
Pornește bușteanele lente
intra/usr/local/etc/php-fpm.dSub-configurație, găsește www.conf (în funcție de situația ta reală), PHP 5.3.3 și versiunile ulterioare sunt setate astfel:
; Timeout-ul pentru a servi o singură cerere, după care un backtrace PHP va fi ; A fost descărcat în fișierul 'slowlog'. O valoare de "0" înseamnă "off". ; Unități disponibile: s(econds)(implicit), m(inutes), h(al nostru) sau d(ays) ; Valoare implicită: 0 request_slowlog_timeout = 1s ; Fișierul de jurnal pentru cererile lente ; Valoare implicită: /usr/local/php/log/php-fpm.log.slow slowlog = /usr/local/php/log/php-fpm.log.slow ; Timeout-ul pentru a transmite o singură cerere, după care lucrătorul procesează ; Să fii ucis. Această opțiune ar trebui folosită când este opțiunea ini 'max_execution_time' ; nu oprește executarea scripturilor dintr-un motiv oarecare. O valoare de "0" înseamnă "off". ; Unități disponibile: s(econds)(implicit), m(inutes), h(al nostru) sau d(ays) ; Valoare implicită: 0 request_terminate_timeout = 10s Notă: request_terminate_timeout Terminați direct un proces care a rulat prea mult timp
request_slowlog_timeout Scrie fișiere prea lente pentru a fi executate în log
De acum înainte, poți optimiza fișierele programului conform jurnalului de execuție lentă /usr/local/php/log/php-fpm.log.slow!
|