Djangoを利用したアプリケーション用の統合サーバーをまとめました。一部の機能はまだ実験段階であり、リクエストが非常に長くなります。
今のところ、パフォーマンスの低下は問題ありませんが、統合できるようにする必要があります。長いリクエストにつながる機能を使用すると、アプリは(予想どおり)ハングし、おそらく1分半後に「502-Bad Gateway」を返します。アプリの残りの部分は正常に動作します。
私はgunicornログをチェックしました、そしてこれが起こるときはいつでも私は
2012-01-20 17:30:13 [23128] [DEBUG] GET /results/
2012-01-20 17:30:43 [23125] [ERROR] WORKER TIMEOUT (pid:23128)
Traceback (most recent call last):
File "/home/demo/python_envs/frontend/lib/python2.6/site-packages/gunicorn/app/base.py", line 111, in run
os.setpgrp()
OSError: [Errno 1] Operation not permitted
ただし、これは実際のワーカータイムアウトのかなり前に発生します。念のため、10分に設定しました。これは、gunicornを実行するupstartスクリプトの一部です。
description "..."
start on runlevel [2345]
stop on runlevel [!2345]
#Send KILL after 5 seconds
kill timeout 5
respawn
env VENV="/path/to/a/virtual/env/"
#how to know the pid
pid file $VENV/run/guniconr-8080.pid
script
exec sudo -u demo $VENV/bin/gunicorn_django --preload --daemon -w 4 -t 600 --log-level debug --log-file $VENV/run/gunicorn-8080.log -p $VENV/run/gunicorn-8080.pid -b localhost:8080 /path/to/settings.py
end script
私はgunicornバージョン0.13.4を実行しています。どんな助けでも大歓迎です。
-t
ですが、質問ですでに持っていたオプションと同じではありませんか?