@xaseros

Почему php5-fpm плодит процессы и не отвечает на запросы фронтенда?

Здравствуйте.

Есть довольно мощный сервер (выделенный, 4-ядра ксеон, 32 памяти, SSD). На котором по не понятной причине перестает работать php-fpm. В какое-то время он просто перестает отвечать на запросы, а в процессах висит куча его пулов.

root     17085  0.0  0.0 333852 20156 ?        Ss   Aug12   0:12 php-fpm: master process (/etc/php5/fpm/php-fpm.conf)                    
www-data 25473  0.0  0.0 859832 26180 ?        Sl   07:30   0:00 php-fpm: pool www                                                       
www-data 25474  0.0  0.0 856492 19976 ?        Sl   07:30   0:00 php-fpm: pool www                                                       
www-data 25477  0.0  0.0 855764 21748 ?        Sl   07:30   0:00 php-fpm: pool www                                                       
www-data 25479  0.0  0.0 855688 20408 ?        Sl   07:30   0:00 php-fpm: pool www                                                       
www-data 25485  0.0  0.0 854708 20112 ?        Sl   07:31   0:00 php-fpm: pool www

и таких 202 штуки.

В логах кроме ошибок nginx ничего нету (php5-fpm лог чистый)

2015/08/14 09:00:11 [error] 17824#0: *596666 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 180.153.182.101, server: example.ru, request: "GET /ballu/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:8888", host: "www.example.ru", referrer: "http://www.example.ru/ballu/"
2015/08/14 09:13:42 [error] 17822#0: *596916 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 80.251.228.162, server: example.ru, request: "GET /100053721/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:8888", host: "www.example.ru"


и все в таком духе

конфиг /etc/php5/fpm/pool.d/www.conf (коменты удалены)
[www]
user = www-data
group = www-data
listen = 127.0.0.1:8888; 
pm = dynamic
pm.max_children = 200
pm.start_servers = 10
pm.min_spare_servers = 10
pm.max_spare_servers = 10 
access.log = /var/log/php5-fpm/$pool.access.log 
chdir = /
security.limit_extensions = .php


конфиг /etc/php5/fpm/php-fpm.conf (коменты удалены)
[global]
pid = /run/php5-fpm.pid
error_log = /var/log/php5-fpm.log
log_level = debug
emergency_restart_threshold = 8
emergency_restart_interval = 60
process_control_timeout = 10  
include=/etc/php5/fpm/pool.d/*.conf


До недавнего времени, работал на сокетах. Но поскольку проблема проявляется стабильно, попробовал перевести на порты. Результата нет. Не могу понять в чем проблема.
  • Вопрос задан
  • 555 просмотров
Решения вопроса 1
sim3x
@sim3x
serverfault.com/questions/344538/php-fpms-chroot-a...

или сделай chroot или сделай правильно chdir

Не используй на нагруженном проекте pm = dynamic - больше времени будет уходить на создание потоков, чем на обработку
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
18 апр. 2024, в 21:56
2000 руб./за проект
18 апр. 2024, в 21:00
150 руб./за проект