nginx + uwsgi + debian +守护进程

时间:2012-09-07 08:39:21

标签: nginx debian flask daemon uwsgi

嗯,首先这些只是我遵循的一些教程:

projects.unbit.it/uwsgi/wiki/Doc
projects.unbit.it/uwsgi/wiki/Install
projects.unbit.it/uwsgi/wiki/RunOnNginx
projects.unbit.it/uwsgi/wiki/Quickstart
实际上,这个应该有效,因为它是宝贝步骤......对吗? http://library.linode.com/web-servers/nginx/python-uwsgi/debian-6-squeeze 错... = [ 他们的uwsgi守护进程“首发”根本不起作用......

现在,我在哪里,如果我从命令行运行uwsgi,我可以得到一个简单的hello世界,一个简单的例子:

uwsgi -s 127.0.0.1:9001 --wsgi-file /home/www/test/application/wsgi_configuration_module.py

这是一种可取的,有点不...我喜欢的东西是:它有效,但它不是一个守护进程所以它运行如下: http://i.imgur.com/MUSM4.jpg 问题在于:我不能做任何事情,它需要我手动启动它,它只能运行那个hello world脚本......在哪里 - 当我设置一个快速的nginx + php-fpm我很容易得到它运行在诸如/tmp/php.sock之类的套接字上,我可以轻松地将nginx发送到该套接字的php url,所以php-fpm处理我所有的php需求...

我想做什么:

让uwsgi在启动时自动启动

让它与nginx一起使用

让nginx通过uwsgi发送python脚本,以便它正常工作

让烧瓶工作的uwsgi? (之后......其他一切)

任何人都可以帮我这个吗?我很狡猾,我需要几次才能搞清楚,并且我有nginx了...我用php-fpm很好地解决了这个问题,但我还是没能让python工作得很好...我有多个虚拟机可以完全安装错误的东西。需要重新开始,所以如果有人想试一试,请成为我的客人..感谢任何帮助/链接/提示等

1 个答案:

答案 0 :(得分:2)

您可以考虑使用http://supervisord.org/来管理您的流程。至于服务你的应用程序,我只熟悉通过Python调用WSGI服务器的安排。 Flask文档可以让你使用gevent:

from gevent.wsgi import WSGIServer
from yourapplication import app

http_server = WSGIServer(('', 5000), app)
http_server.serve_forever()

如果您没有特别的理由将uWSGI用作应用程序服务器,我会发现此设置更加容易。 nginx只需要充当代理。如果uWSGI是一个要求,Flask文档有一个关于nginx配置的部分,虽然我想你已经检查过了。如果不是:http://flask.pocoo.org/docs/deploying/uwsgi/#configuring-nginx