【发布时间】:2013-07-11 09:28:04
【问题描述】:
我成功地安装了: NGINX + uWSGI + 烧瓶 在 CentOS 6.x 服务器上
但是在配置方面我还是有一些疑惑:
1) 我将 NGINX 作为服务运行:service nginx start/stop/restart
如果我输入“ps aux | grep nginx”,我可以看到 2 个进程:
- (通过用户root)主进程/usr/sbin/nginx -c /etc/nginx/nginx.conf
- (由用户 nginx)工作进程
可以吗?
2) 我为 Flask 设置了一个 virtualenv,并在这样的 virtualenv 下安装了 uWSGI 包。
目前,我通过键入“uwsgi /somedir/uwsgi.ini”手动启动 uWSGI,其中 uwsgi.ini 如下:
chdir = /myappdir
uid = pyuser
chmod-socket = 666
socket = /tmp/uwsgi.sock
module = run
callable = app
virtualenv = /myappdir/myvirtualenv
是否可以将 uWSGI 作为服务启动,类似于 NGINX(如第 1 点所述)?这种情况下用户应该是root还是非root?
3) 当我启动 uWSGI 时,我目前收到以下警告:
*** Python threads support is disabled. You can enable it with --enable-threads ***
我意识到在“uwsgi.ini”配置文件中还可以配置多个进程和线程。考虑到我正在运行的服务器只有 1 个核心,我可以设置多个进程和线程吗?如果有,有多少?
3b) 在 NGINX 配置文件 "/etc/nginx/nginx.conf" 中也可以指定 "worker_processes",默认为 1。我可以增加它,或者它可以高于 1 仅用于多核服务器?
4) 除了禁用线程支持之外,当我启动 uWSGI 时,我还会收到这些警告。它们是什么意思?
*** WARNING: you are running uWSGI without its master process manager ***
*** Operational MODE: single process ***
*** uWSGI is running in multiple interpreter mode ***
【问题讨论】:
-
我用“pip install uwsgi”将它安装在virtualenv中
标签: python nginx flask wsgi uwsgi