2016-10-20 2 views
1

У меня есть проект python/Django (myproject), запущенный на nginx и uwsgi.перезагрузка диспетчера вызывает зомби uwsgi процесс

Я запускаю команду uwsgi через supervisord. Это работает отлично, но при перезапуске supervisord он создает процесс зомби. Что я делаю не так? Что я не замечаю, чтобы сделать это чисто? любой совет?

Зачастую служба супервайзера занимает слишком много времени. в этот момент я нашел следующее в supervisor.log файле

INFO ждет stage2_BB_wsgi, stage3_BB_wsgi, stage4_BB_wsgi умереть

точки Примечания: Я бег несколько промежуточного сервера в одной машине, а именно stage2 .. stageN

supervisor.conf экстракт файл [program:stage2_BB_wsgi] command=uwsgi --close-on-exec -s /home/black/stage2/shared_locks/uwsgi_bb.sock --touch-reload=/home/black/stage2/shared_locks/reload_uwsgi --listen 10 --chdir /home/black/stage2/myproject/app/ --pp .. -w app.wsgi -C666 -H /home/black/stage2/myproject/venv/ user=black numprocs=1 stdout_logfile=/home/black/stage2/logs/%(program_name)s.log stderr_logfile=/home/black/stage2/logs/%(program_name)s.log autostart=true autorestart=true startsecs=10 exitcodes=1 stopwaitsecs=600 killasgroup=true priority=1000

благодарит заранее.

ответ

1

Вам необходимо установить stopsignal в INT или QUIT.

По умолчанию supervisord отправляет SIGTERM при перезапуске программы. Это не убьет uwsgi, перезагрузите его и его работников.

Смежные вопросы