Linux下uwsgi服务器配置及重启

Linux下uwsgi服务器配置

Linux下部署python的web项目常用到uwsgi,但是uwsgi关闭和重启困难,我之前都是修改完代码然后重启服务器来解决的,显然这并不适用于线上项目。网络上常见的博客解决方法用一个写一个shell来进行关闭,本人实际测试过,过于繁琐,并不是解决重启项目的最优解。通过阅读uwsgi的官方文档和总结整理成这篇博客,希望可以帮助到广大python web程序员和使用uwsgi服务器的伙伴。

1.uwsgi 配置文件

我本身用的是Django框架,在此用Django来举例。

配置文件内容如下:

# mysite_uwsgi.ini file
[uwsgi]

# Django-related settings
# 项目的完整路径
chdir           = /home/rzy/enterprise/Cavy
# Django's wsgi file
module          = Cavy.wsgi
# the virtualenv (full path)
# master
master          = true
# maximum number of worker processes
processes       = 10
# the socket (use the full path to be safe
socket          =  :8031
# ... with appropriate permissions - may be needed
# chmod-socket    = 664
# clear environment on exit
vacuum          = true
# 日志的存放路径,目录要建立好,.log文件程序启动会自动建立,追加内容
daemonize = /home/rzy/log/cavy_debug.log
buffer-size     = 65535
post-buffering = 65535
# python所用虚拟环境的完整路径
virtualenv = /home/rzy/.virtualenvs/py2_successs_edu
# uwsgi进程的状态文件存放
stats = %(chdir)/uwsgi/uwsgi.status
# uwsgi文件启动后的pid
pidfile = %(chdir)/uwsgi/uwsgi.pid

将此文件命名为 [项目名]_uwsgi.ini , 拿我的项目Cavy为例子,我的uwsgi文件就是命名为cavy_uwsgi.ini,这样写很容易理解是某个项目的uwsgi配置文件。

2.建立uwsgi文件夹

在项目的根目录下建立uwsgi文件夹, 使用命令mkdir uwsgi即可,建立名为uwsgi的文件夹,用于存放步骤1中的uwsgi.status 和uwsgi.pid文件。

3.uwsgi 服务器的启动、关闭和重新加载

uwsgi服务器配置成功后,可以使用uwsgi命令来进行灵活管理。
(1)启动

uwsgi --ini cavy_uwsgi.ini

(2)停止

 uwsgi --stop uwsgi/uwsgi.pid

(3)重启

uwsgi --connect-and-read  uwsgi/uwsgi.status

从此,管理uwsgi项目就方便很多了。有问题可以评论区私我。我的另一边博客ubuntu + Django + uwsgi + nginx详细讲述了Django项目在Ubuntu上的部署方案,传送门点这里(我现在还没写好)。

你可能感兴趣的:(运维记录,django,uwsgi)