uwsgi上线django项目

PersonEval为已经建好的django项目,如何利用django建立web服务见Django实现算法web服务_Mugo_Moon的博客-CSDN博客

uwsgi直接与业务方之间通信使用http/https协议,区别于nginx调用uwsgi的socket传输方式

uwsgi默认单进程单线程,可通过--processes及--threads参数增加进程和线程数,并可通过nginx来提高并发数,详见Nginx上线uwsgi+django项目(nginx部署uwsgi+django算法集群)_Mugo_Moon的博客-CSDN博客

1、命令行模式

[root@100-020-gpuserver PersonEval]# uwsgi --http 0.0.0.0:8000 --file PersonEval/wsgi.py --processes 4 --threads 2

2、uwsgi.ini文件模式

(1)PersonEval项目下新建uwsgi文件夹,在其下面新建uwsgi.ini文件(或直接在项目下建文件也行,only排版不好看而已)

# uwsig使用配置文件启动
[uwsgi]
master = true
processes = 4
# 项目所在的根目录
chdir=/data/Djgango_example/PersonEval/
# 指定项目的application,区别于启动命令--wsgi-filemysite/wsgi.py
module=PersonEval.wsgi:application
pythonpath=/root/anaconda3/bin/python
#the local unix socket file than commnuincate to Nginx
# 指定sock的文件路径,这个sock文件会在nginx的uwsgi_pass配置,用来nginx与uwsgi通信
# 支持ip+port模式,直接使用http协议,区别于nginx调用uwsgi的socket传输方式
http = 0.0.0.0:8000

# 存放进程编号的文件
pidfile=/data/Djgango_example/PersonEval/uwsgi/uwsgi.pid
# 日志文件,因为uwsgi可以脱离终端在后台运行,日志看不见。以前的runserver是依赖终端的
daemonize = /data/Djgango_example/PersonEval/uwsgi/logs/uwsgi.log
#自动移除unix Socket和pid文件当服务停止的时候
vacuum=true
#logto = /data/Djgango_example/fmc_pigident/companyuwsgi.log
autostart = true
startsecs = 5
autorestart = true
startretries = 3
#evil-reload-on-as = 16000
#evil-reload-on-rss = 16000


[uwsgi]
# uwsgi 启动时所使用的地址与端口
http = 0.0.0.0:8000
# 指向网站目录
chdir = /opt/algorithm/PersonEval
# python 启动程序文件
wsgi-file = app.py
# python 程序内用以启动的 application 变量名
callable = app
# 处理器数
processes = 8
# 线程数
threads = 16
#状态检测地址
stats = 127.0.0.1:9298
enable-threads = true
# 是否启动定时调度模块, 以及
mule = cron.py
#长连接
http-keepalive = 1
add-header=Connection: Keep-Alive

(2)命令行启动

[root@100-020-gpuserver PersonEval]# uwsgi --ini uwsgi/uwsgi.ini

(3)查看并终止进程

#查看进程
[root@100-020-gpuserver PersonEval]# ps -aux | grep uwsgi
root      7433  0.0  0.1 277152 37768 ?        S    15:48   0:00 uwsgi --ini uwsgi/uwsgi.ini
root      7434  0.0  0.1 277552 33512 ?        S    15:48   0:00 uwsgi --ini uwsgi/uwsgi.ini
root      7435  0.0  0.1 277936 31740 ?        S    15:48   0:00 uwsgi --ini uwsgi/uwsgi.ini
root     12031  0.0  0.0 112536   828 pts/0    R+   16:22   0:00 grep --color=auto uwsgi
#中止进程
#依靠uwsgi.pid,若没有通过lsof -i :8000查看id,添加到新建的uwsgi.pid文件中即可
[root@100-020-gpuserver PersonEval]# uwsgi --stop uwsgi/uwsgi.pid

3、docker制作uwsgi+django项目镜像

docker制作uwsgi+django镜像_Mugo_Moon的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值