ТЕХНИЧЕСКА ПОДДРЪЖКА ЗА УЕБ ХОСТИНГ
     
 

PHP-FPM статус

Можете да управлявате и да прегледате конфигурацията на PHP за поддомейните си на страницата "PHP настройки" в Контролния панел. Там има и диагностична информация, която се отнася само до PHP-FPM.

Когато щракнете на бутона "Промени" до някой от поддомейните, ще видите страница с настройките на PHP за конкретния поддомейн.

Ако избраната PHP технология е FPM с OPcache, можете да щракнете върху бутона "Статус", за да видите допълнителен списък с диагностична информация за производителността и натовареността на сайта Ви.

Следва списък с диагностичните показатели, които можете да видите, наред със значението на всеки от тях:

Accepted conn Броят на заявките, които са приети и обработени.
Active processes Броят на активните PHP-FPM процеси, които приемат заявки.
Idle processes Броят на процесите, които са свободни.
Listen queue Тази стойност показва броя на заявките, които изчакват изпълнение.
Listen queue len Това е броят на чакащите изпълнение заявки.
Max active processes Това е най-големият брой активни процеси, които са били стартирани, откакто работи главният PHP-FPM процес.
Max children reached Показва колко пъти е достиган лимитът за брой PHP-FPM процеси, които обработват заявки.
Max listen queue Показва най-големият брой заявки в опашката, откакто е стартиран главният PHP-FPM процес.
Pool Това е общият идентификатор на FPM процесите. Обикновено е името на поддомейна.
Process manager Типът стратегия за управление на процесите, избрана за сайта Ви. На нашите сървъри тази стойност е "ondemand".
Slow requests Броят заявки, които са отнели повече време за обработка от определен максимален срок за изпълнение.
Start since Показва броят на секундите, в които е работил главният PHP-FPM процес.
Start time Показва кога е стартиран PHP-FPM процесът.
Total processes Броят на всички PHP-FPM процеси, които работят в момента.

Най-важните показатели, на които трябва да обърнете внимание, са "Max children reached" и "Listen queue".

Max children reached

Тази стойност ще се увеличава винаги, когато главният PHP-FPM процес достигне максималния брой процеси, които може да стартира за изпълнение на заявки.

Ако тази стойност не е нула, това означава, че в даден момент е имало повече заявки към сайта Ви, отколкото хостинг услугата Ви е могла да изпълни лесно и заявките са започнали да се трупат на опашка за изпълнение. Това може да направи сайта Ви по-бавен от обикновено и може да е индикация за други проблеми.

Listen queue

Тази стойност показва броя на заявките, които чакат да бъдат изпълнени. Ако в опашката има заявки, това може да означава, че сайтът Ви е претоварен или има друг проблем, който забавя изпълнението на заявките.

Детайли за работещите процеси

Можете и да прегледате състоянието на работещите FPM процеси. Това се прави на командния ред с командата php-fpm-status. С нея можете да видите какви заявки обработва сайтът Ви в момента.

За целта трябва да влезете в акаунта си през SSH и да изпълните следната команда:

php-fpm-status www.example.com

Трябва да заместите "www.example.com" с името на сайта си.

Ето примерен резултат от командата:

Expires: Thu, 01 Jan 1970 00:00:00 GMT
Cache-Control: no-cache, no-store, must-revalidate, max-age=0
Content-Type: text/plain
 
pool:                 www.example.com
process manager:      ondemand
start time:           25/Apr/2021:01:37:49 +0800
start since:          1695502
accepted conn:        66673
listen queue:         0
max listen queue:     0
listen queue len:     0
idle processes:       1
active processes:     2
total processes:      3
max active processes: 20
max children reached: 2
slow requests:        0
 
************************
pid:                  22441
state:                Running
start time:           17/May/2021:04:14:52 -0400
start since:          871
requests:             127
request duration:     685
request method:       GET
request URI:          /fpm-status-ShOC0gaIVoh0eiH1eEGNahVEK?full
content length:       0
user:                 -
script:               -
last request cpu:     0.00
last request memory:  0

************************
pid:                  22442
state:                Idle
start time:           17/May/2021:04:14:52 -0400
start since:          871
requests:             127
request duration:     64918
request method:       POST
request URI:          /index.php
content length:       36
user:                 -
script:               /home/example/www/www/index.php
last request cpu:     2.62
last request memory:  2097152

Първата част от резултата показва същата информация като "Статус" раздела, описан по-горе.

След нея има информация за всеки активен FPM процес. Детайлите са както следва:

pid Това е идентификационният номер на процеса в операционната система на сървъра.
state Състояние на процеса. Най-вероятно има един или повече процеси в "Idle" състояние, които изчакват нови заявки.
start time Кога е стартиран процесът.
start since Показва колко секунди е работил процесът досега.
requests Броят заявки, обработени от този процес.
request duration Колко време е отнело на процеса (в микросекунди) да обработи последната заявка.
request method HTTP методът на последната обработена заявка.
request URI URI на заявката. Имайте предвид, че в зависимост от конфигурацията на сайта Ви, стойността тук може да се различава от тази, подадена на сървъра при заявката.
content length Колко байта е заявката.
user Не се ползва на нашите сървъри.
script Пътека на файловата система до изпълнявания PHP файл.
last request cpu Колко процесорно време (секунди) е отнело на сървъра да обработи заявката.
last request memory Количеството памет (байтове), което е използвано от сървъра, за да обработи заявката.

Най-важните показатели са "request duration", "last request cpu" и "last request memory".

Request duration

Показва колко време е отнело на PHP FPM процеса да обработи последната заявка. Времето тук се измерва в микросекунди, така че 5 000 000 означава 5 секунди.

Last request CPU

Показва колко секунди процесорно време е отнело на сървъра да обработи последната заявка. Този показател е важен, защото може да Ви покаже дали някой скрипт претоварва акаунта Ви. По-ниски стойности са по-добри и за натоварването, и за производителността на сайта.

Last request memory

Показва количеството памет, заделено за PHP FPM процеса по време на последната обработена заявка.

Въпреки че ограничението на сървърите ни е доста високо, трябва да имате предвид, че ако паметта свърши, сайтът Ви може да спре да работи. Ако тази стойност често е висока, това може да означава, че има проблеми с употребата на ресурси от страна на PHP приложенията Ви.