Podczas tworzenia strony internetowej w PHP, jeśli niektóre dynamiczne strony PHP są bardzo wolne w dostępie po uruchomieniu, możemy analizować wąskie gardła na stronie za pomocą spowolnionych logów php-fpm.
Ustawienie PHP-FPM Slowlog pozwala nam zobaczyć, które procesy PHP są zbyt wolne i powodują problemy ze stroną internetową.
Najpierw sprawdź wszystkie procesy za pomocą górnego polecenia -c, aby zobaczyć adres pliku konfiguracyjnego ładowany przez php-fpm, jak pokazano na poniższym rysunku:
Konfiguracja FPM
parametr: -p, dynamicznie modyfikuj --prefiks w wierszu poleceń
include=etc/php-fpm.d/*.conf, aby zawierać jeden lub więcej plików, jeśli istnieje glob(3) (funkcja glob() zwraca nazwę pliku lub katalog odpowiadający określonemu wzorcowi)
php-fpm ładuje plik podkonfiguracyjny, $pool zmienna może być użyta w dowolnej dyrektywie i zastąpi odpowiednią nazwę puli procesów. Na przykład: tutaj[www]
Włącz wolne kłody
wejść/usr/local/etc/php-fpm.dPodkonfiguracyjny plik, znajdź www.conf (zgodnie z Twoją sytuacją), PHP 5.3.3 i późniejsze wersje są ustawione następująco:
; Czas na obsłużenie pojedynczego żądania, po którym następuje śledzenie PHP backtrack, to ; Zrzut do pliku 'slowlog'. Wartość '0' oznacza 'wyłączone'. ; Dostępne jednostki: s(econds)(domyślnie), m(inutes), h(ours) lub d(ays) ; Domyślna wartość: 0 request_slowlog_timeout = 1 ; Plik logu dla wolnych żądań ; Domyślna wartość: /usr/local/php/log/php-fpm.log.slow slowlog = /usr/local/php/log/php-fpm.log.slow ; Czas na doręczenie pojedynczego wniosku, po którym proces pracownika będzie ; Zostać zabitym. Ta opcja powinna być używana, gdy ini jest 'max_execution_time' ; z jakiegoś powodu nie zatrzymuje wykonywania skryptu. Wartość '0' oznacza 'wyłączone'. ; Dostępne jednostki: s(econds)(domyślnie), m(inutes), h(ours) lub d(ays) ; Domyślna wartość: 0 request_terminate_timeout = 10 sekund Uwaga: request_terminate_timeout Zakończ proces, który działa zbyt długo bezpośrednio
request_slowlog_timeout Zapisuj pliki, które są zbyt wolne do wykonania do loga
Od teraz możesz optymalizować pliki programów zgodnie z slow execution log /usr/local/php/log/php-fpm.log.slow!
|