我正在使用 uWSGI 和 nginx 来运行两个并行的 Django 应用程序。其中一个,负载稍多的一个(两者都非常小)每 24 小时大约每 24 小时死亡一次,并显示以下消息:
[pid: 16358|app: 0|req: 1000/1000] 127.0.0.1 () {46 vars in 847 bytes} [Thu Mar 24 16:38:31 2011] GET /aktivitet/409/picknick/ => generated 18404 bytes in 117 msecs (HTTP/1.0 200) 3 headers in 156 bytes (1 switches on core 0)
...The work of process 16358 is done. Seeya!
我正在使用具有以下配置的 Supervisor 启动进程:
[program:uttrakad]
command=/home/myuser/webapps/uwsgi_test/bin/uwsgi
-s /home/myuser/webapps/uwsgi_test/app1.sock
-C /home/myuser/webapps/django/app1.wsgi
--processes 1
--harakiri 120
--max-requests 1000
autostart=true
autorestart=true
stdout_logfile=/home/myuser/logs/user/uwsgi_app1.log
redirect_stderr=true
stopsignal=QUIT
.wsgi 文件很简单:
import os
import sys
sys.path =['/home/openworks/webapps/django/lib/python2.6/','/home/openworks/webapps/django/','/home/openworks/webapps/django/app1/'] + sys.path
from django.core.handlers.wsgi import WSGIHandler
os.environ['DJANGO_SETTINGS_MODULE'] = 'app1.prod_settings'
application = WSGIHandler()
nginx 设置了 2 个工作进程,2048 个 worker_connections,如下所示:
location / {
uwsgi_pass unix:///home/openworks/webapps/uwsgi_test/app1.sock;
include uwsgi_params;
}
正如我所说,还有一个应用程序配置了完全相同的方式,它一直在无中断地运行,但几乎没有流量。
有什么线索吗?为什么我会收到“ ...进程 16358 的工作已完成。Seeya ”消息?
谢谢