uwsgi常用参数说明

<uwsgi>
        <socket>demo.socket</socket>
        <processes>4</processes>

        <chdir>/root/workspace/DjangoDemo</chdir>
        <pythonpath>/root/workspace/DjangoDemo</pythonpath>

        <module>DjangoDemo.wsgi</module>

        <master />
        <enable-threads />
        <thunder-lock />

        <pidfile>/var/run/django_demo.pid</pidfile>
        <daemonize>/var/log/django_demo.log</daemonize>
</uwsgi>

socket:uwsgi监听的socket,可以为socket文件或ip地址+端口号(如0.0.0.0:9000),取决于nginx中upstream的设置

processes:同时启动uwsgi进程的个数,这个进程与nginx中的workers是不一样的,uwsgi中的每个进程每次只能处理一个请求(进程越多可以同时处理的请求越多),nginx采用的异步非阻塞的方式来处理请求的,每个进程可以接受处理多个请求。

chdir:在app加载前切换到当前目录

pythonpath:给PYTHONPATH 增加一个目录(或者一个egg),最多可以使用该选项64次。

module:加载指定的python WSGI模块(模块路径必须在PYTHONPATH里)

master:相当于master=true,启动一个master进程来管理其他进程,以上述配置为例,其中的4个uwsgi进程都是这个master进程的子进程,如果kill这个master进程,相当于重启所有的uwsgi进程

pidfile:在失去权限前,将master的pid写到当前文件中

daemonize:使进程在后台运行,并将日志打到指定的日志文件或者udp服务器(不会影响nginx日志的输出)


其他问题:

1、open("./python_plugin.so"): No such file or directory [core/utils.c line 3653]

!!! UNABLE to load uWSGI plugin: ./python_plugin.so: cannot open shared object file: No such file or directory !!!

可以将<plugins>python</plugins>去掉,因为使用pip安装后包含了这一环境

2、uwsgi:invalid option -- x

安装libxml2*重新编译安装uwsgi即可。【这个尽量通过pip来安装和卸载,如果是通过源码安装(python uwsgiconfig.py --build),可以尝试python uwsgiconfig.py --clean,然后再通过pip安装】fedora安装pip


参考:

uWSGI Options

uWSGI参考资料(1.0版本的配置选项列表)

Nginx+Django+uwsgi项目迁移要注意的坑

Nginx+uWSGI

部署中遇到的问题-UWSGI(二)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值