centos — php-fpm навсегда возрождает детей при выполнении uglifycss

У меня есть такая строка в приложении php:

exec('uglifycss 1.css 2.css > main.css');

После его выполнения php-fpm перезапускает все дочерние элементы без остановки, что приводит к 100% -ной загрузке процессора на сервере в считанные секунды. Спасает ситуацию только служба php-fpm restart. Все остальные части приложения работают хорошо, и exec с другими командами (uglifyjs, ssconvert, wkhtmltopdf) работают хорошо, только эта строка вызывает такие проблемы.

проведение uglifycss в bash работает хорошо, отключение opcache не помогает, все разрешения правильные, изменение версии uglifycss не помогает. Сама строка работает хорошо — минимизированный файл появляется в папке.

Логи php-fpm:

[07-Jun-2017 00:10:39] NOTICE: fpm is running, pid 21162
[07-Jun-2017 00:10:39] NOTICE: ready to handle connections
[07-Jun-2017 00:10:39] NOTICE: systemd monitor interval set to 10000ms
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21199 exited with code 0 after 0.011741 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21200 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21200 exited with code 0 after 0.012848 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21201 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21201 exited with code 0 after 0.011070 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21202 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21202 exited with code 0 after 0.012875 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21203 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21203 exited with code 0 after 0.012139 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21204 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21204 exited with code 0 after 0.012334 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21205 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21205 exited with code 0 after 0.011729 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21206 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21206 exited with code 0 after 0.010936 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21207 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21207 exited with code 0 after 0.011194 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21208 started
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21208 exited with code 0 after 0.011382 seconds from start
[07-Jun-2017 00:10:59] NOTICE: [pool app] child 21209 started

и так до тех пор, пока служба не будет перезапущена вручную …

Информация о сервере:

CentOS 7, php 7.1.5, node 8.0.0, npm 5.0.0, uglifycss 0.0.27

Похоже на ошибку, у кого-нибудь есть такая же проблема? Есть ли какое-то решение для этого?

2

Решение

Это ошибка php-fpm, связанная с использованием exec / passthru в дочерних процессах. Это из-за разногласий по поводу stdin. Исправление можно увидеть в этом PR: https://github.com/php/php-src/pull/3287 который был объединен в php 7.1.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]