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
이미 질문 에서 선택한 옵션 과 동일하지 않습니까?