执行uglifycss时,php-fpm永远会响应儿童



我在PHP应用程序中具有这样的行:

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

执行它后,PHP-FPM开始重新启动所有不停的孩子,这在几秒钟内导致服务器上的CPU 100%。只有Service PHP-FPM重新启动可以节省情况。应用程序的所有其他部分都可以很好地工作,并且执行其他命令(uglifyjs,ssconvert,wkhtmltopdf(效果很好,只有此行会引起此类麻烦。

执行bash中的uglifycss效果很好,禁用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

似乎是一个错误,有人有同样的问题吗?有什么解决方案吗?

这是与在子进程中使用exec/passhru有关的PHP-FPM错误。这是由于对stdin的争论。该修复程序可以在此PR中看到:https://github.com/php/php/php/php-src/pull/3287已合并为PHP 7.1。

最新更新