Joris Michaux
2015-02-27 09:05:05 UTC
Hello all,
I come to you after 2 days playing with supervisor, and have now a problem
with a PHP daemon witch auto fork into many child process.
My conf :
[program:MyDaemon.php]
command=/usr/bin/pidproxy /var/run/worker/MyDaemon.pid /usr/bin/nohup nice
-n 22 /usr/bin/php -f /data/www/core/bin/MyDaemon.php -- ARG --instance=ARG
--puid=ARG --guid=ARG
redirect_stderr=true
autorestart=true
startsecs=10
startretries=10
stopsignal=TERM
stopasgroup=true
killasgroup=true
priority=1
My result :
19737 ? S 0:00 \_ /usr/bin/python /usr/bin/pidproxy
/var/run/worker/MyWorker.pid /usr/bin/nohup nice -n 22 /usr/bin/php -f
/data/www/core/bin/MyDaemon.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19738 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19743 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19744 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19745 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19746 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
So it seems that my daemon has been properly monitored, but a stop command
will not kill child process... So supervisor restart my worker with news
childs, and let 4 zombies...
Is my configuration wrong ? Or should I look into the worker code to term
himself his childs ?
Thanks by advance.
Regards,
Joris
I come to you after 2 days playing with supervisor, and have now a problem
with a PHP daemon witch auto fork into many child process.
My conf :
[program:MyDaemon.php]
command=/usr/bin/pidproxy /var/run/worker/MyDaemon.pid /usr/bin/nohup nice
-n 22 /usr/bin/php -f /data/www/core/bin/MyDaemon.php -- ARG --instance=ARG
--puid=ARG --guid=ARG
redirect_stderr=true
autorestart=true
startsecs=10
startretries=10
stopsignal=TERM
stopasgroup=true
killasgroup=true
priority=1
My result :
19737 ? S 0:00 \_ /usr/bin/python /usr/bin/pidproxy
/var/run/worker/MyWorker.pid /usr/bin/nohup nice -n 22 /usr/bin/php -f
/data/www/core/bin/MyDaemon.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19738 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19743 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19744 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19745 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
19746 ? SN 0:00 \_ /usr/bin/php -f
/data/www/core/bin/MyWorker.php -- ARG --instance=ARG --puid=ARG --guid=ARG
So it seems that my daemon has been properly monitored, but a stop command
will not kill child process... So supervisor restart my worker with news
childs, and let 4 zombies...
Is my configuration wrong ? Or should I look into the worker code to term
himself his childs ?
Thanks by advance.
Regards,
Joris