Redash中文版配置uwsgi服务

1、安装

pip install uwsgi

2、配置 (1)uwsgi执行一般有两种方式:命令行和文件配置,但是命令行可能需要识记很多参数,因此采用文件配置是更通用的做法,文件格式支持很多种比如ini、xml、yaml等,笔者建议还是采用比较简单key-value形式ini模式,下面给出一个简单的uwsgiini配置实例:

[uwsgi]
http=:5000
chdir=/root/redash/
wsgi-file=redash/wsgi.py
callable=app
master=true
virtualenv=/root/redash/venv/
pythonpath=/root/redash/
processes=1
threads=2

执行:

uwsgi --ini uwsgi.ini

(2)参数解释: • socket:socket文件,也可以是地址+端口; • master:是否启动主进程来管理其他进程; • chdir:项目的根目录; • module:wsgi文件相对路径; • home:虚拟环境目录; • workers:开启的进程数量; • reload-mercy:设置在平滑的重启(直到接收到的请求处理完才重启)一个3) 、工作子进程中,等待这个工作结束的最长秒数; • vacuum:服务结束后时候删除对应的socket和pid文件; • max_requests:每个工作进程设置的请求上限; • limit_as:限制每个uwsgi进程占用的虚拟内存数目; • buffer_size:设置用于uwsgi包解析的内部缓存区大小; • pid_file:指定pid文件; • harakiri:请求的超时时间; • daemonize:进程后台执行,并保存日志到特定路径;如果uwsgi进程被supervisor管理,不能设置该参数; 3、uwsgi三种通讯方式 配置:

socket=120.0.1:8888
http-socket=120.0.1:8888
http=0.0.0.0:8888

Nginx与uwsgi之间用socket通讯现在大部分web服务器支持uwsgi,这是这三种方式最高效的一种形式,socket通信速度会比http快。

Nginx与uwsgi之间用http-socket通讯,这个适用于web服务器不支持uwsgi时。

经验分享 程序员 微信小程序 职场和发展