php-fpm: сотні секунд у журналі


12

У мене є веб-сервер nginx + php-fpm

Тому я помітив у php5-fpm.log багато дивних рядків:

[03-Sep-2013 09:25:23] NOTICE: [pool www] child 23999 exited with code 0 after 321.832329 seconds from start
[03-Sep-2013 09:25:23] NOTICE: [pool www] child 24082 started
[03-Sep-2013 09:25:41] NOTICE: [pool www] child 24032 exited with code 0 after 259.247887 seconds from start
[03-Sep-2013 09:25:41] NOTICE: [pool www] child 24083 started
[03-Sep-2013 09:25:47] NOTICE: [pool www] child 24033 exited with code 0 after 255.954602 seconds from start
[03-Sep-2013 09:25:47] NOTICE: [pool www] child 24084 started
[03-Sep-2013 09:25:50] NOTICE: [pool www] child 24014 exited with code 0 after 327.620462 seconds from start
[03-Sep-2013 09:25:50] NOTICE: [pool www] child 24085 started
[03-Sep-2013 09:25:55] NOTICE: [pool www] child 24034 exited with code 0 after 254.974653 seconds from start
[03-Sep-2013 09:25:55] NOTICE: [pool www] child 24086 started
[03-Sep-2013 09:26:01] NOTICE: [pool www] child 24035 exited with code 0 after 253.388234 seconds from start
[03-Sep-2013 09:26:01] NOTICE: [pool www] child 24087 started
[03-Sep-2013 09:26:02] NOTICE: [pool www] child 24036 exited with code 0 after 251.374430 seconds from start
[03-Sep-2013 09:26:02] NOTICE: [pool www] child 24088 started
[03-Sep-2013 09:26:05] NOTICE: [pool www] child 24019 exited with code 0 after 325.601766 seconds from start
[03-Sep-2013 09:26:05] NOTICE: [pool www] child 24089 started
[03-Sep-2013 09:26:09] NOTICE: [pool www] child 24037 exited with code 0 after 255.871955 seconds from start
[03-Sep-2013 09:26:09] NOTICE: [pool www] child 24090 started
[03-Sep-2013 09:26:09] NOTICE: [pool www] child 24038 exited with code 0 after 255.884311 seconds from start
[03-Sep-2013 09:26:09] NOTICE: [pool www] child 24091 started
[03-Sep-2013 09:26:09] NOTICE: [pool www] child 24039 exited with code 0 after 254.826181 seconds from start
[03-Sep-2013 09:26:09] NOTICE: [pool www] child 24092 started
[03-Sep-2013 09:26:12] NOTICE: [pool www] child 24040 exited with code 0 after 256.232759 seconds from start
[03-Sep-2013 09:26:12] NOTICE: [pool www] child 24093 started
[03-Sep-2013 09:26:14] NOTICE: [pool www] child 24027 exited with code 0 after 321.722533 seconds from start

Хтось може мені сказати, що це за секунди after 321.722533 seconds from startі що це означає?

UPD

Мій конфігурація:

pm = dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.max_requests = 100

Відповіді:


20

"Секунди" - це одиниця часу; 321 з них - трохи більше п’яти хвилин .

Причина, по якій ваші процеси закриваються і відновлюється, полягає в тому, що ви встановили pm.max_requestsпараметр у вашому файлі конфігурації пулу php-fpm.

Наприклад, взяті з конфігурації за замовчуванням:

; The number of requests each child process should execute before respawning.
; This can be useful to work around memory leaks in 3rd party libraries. For
; endless request processing specify '0'. Equivalent to PHP_FCGI_MAX_REQUESTS.
; Default Value: 0
pm.max_requests = 500

Ми можемо побачити у вашій конфігурації, що вона встановлена 100, тому php-fpm переробляє процес після того, як він обробив 100 запитів.


Отже, це означає лише, що бетонна нитка прожила 321секунди і буде відновлена. Я не можу на це звернути увагу?
Lari13

1
Ви можете ігнорувати ці повідомлення; вони нешкідливі та суто інформативні.
Майкл Хемптон

Цих записів журналу можна уникнути, підвищивши log_levelпараметр php-fpm.confз notice(можливо, це значення за замовчуванням) доwarning
Паоло,

2

Що говорить ваша max_requestsустановка? Якщо це зайнятий веб-сайт, він, ймовірно, переробляє його дочірні процеси після того, як він потрапить на таку кількість запитів - якщо не вказано 0, у цьому випадку це може бути натисканням на внутрішній тайм-аут і закриттям дочірніх процесів для збереження пам’яті під час спокійного часу. Я знаю, що процесор FastCGI для IIS робить це; це, мабуть, така ж ситуація і тут.

Src: http://php-fpm.org/wiki/Configuration_File

EDIT: Тоді, що відбувається. Як тільки одна дитина звертається до 100 запитів, вона закривається. PHP-FPM відкриє новий, коли це буде потрібно (що може бути негайно).


pm.max_requests = 100в моїй конфігурації. Запланайте, дивіться оновлення
Lari13
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.