2016-10-20 9 views
1

私は、nginxとuwsgiで実行されているPython/Djangoプロジェクト(myproject)を持っています。スーパーバイザ再起動によってゾンビuwsgiプロセスが発生する

私はsupervisord経由でuwsgiコマンドを実行しています。これは完璧に動作しますが、スーパーバイザを再起動するとゾンビプロセスが作成されます。私は間違って何をしていますか?私はこれをきれいにすることを見落としていますか?アドバイス?

多くの場合、スーパーバイザサービスには時間がかかります。私はつまり、一台のマシンで複数のステージングサーバを実行しています:その時点で私はstage2_BB_wsgi、stage3_BB_wsgi、stage4_BB_wsgiは注意する

ポイントを死ぬのを待っているsupervisor.logファイルに次の

INFOを発見しました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

stopsignalINTまたはQUITに設定します。

デフォルトでは、supervisordは、プログラムを再起動するときにSIGTERMを送信します。これは殺しませんuwsgi、それとその労働者をリロードするだけです。

関連する問題