Как перезапустить php-cgi автоматически с икрой-fcgi

-- говорит cat не пытаться проанализировать, что стало после него параметрами командной строки.

Как пример, думайте о том, что произошло бы в двух случаях если переменная $PIDFILE был определен как PIDFILE="--version". На моей машине они дают следующие результаты:

$ cat $PIDFILE
cat (GNU coreutils) 6.10
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by Torbjorn Granlund and Richard M. Stallman.

$ cat -- $PIDFILE
cat: --version: No such file or directory
1
задан 30 May 2011 в 23:55
2 ответа

Есть ли какая-либо причина, которую Вы не можете переключить на PHP-FPM? Это идет с PHP> = 5.3, и существует патч для включения его для 5,2. Я использовал его приблизительно в течение года теперь, и это было совершенно стабильно без проблем. Это заставило бы Вашу нерестящуюся проблему процесса исчезнуть, поскольку PHP-FPM прозрачно обработал бы уничтожение старых процессов и перезапуск новых для Вас.

Причина PHP_FCGI_MAX_REQUESTS состоит в том, что PHP случайным образом прекратит отвечать на запросы после определенного числа их. Кажется, что эта ошибка, возможно, была частично исправлена в более новых версиях, но во время моего тестирования 5.2.x я заметил, что это произошло многократно.

2
ответ дан 3 December 2019 в 22:08

multiwatch был разработан для этого (для перезапуска дочерних процессов, запускаемых spawn-fcgi) - см. http://cgit.stbuehler.de/gitosis/multiwatch/about/

0
ответ дан 3 December 2019 в 22:08

Теги

Похожие вопросы