管理uWSGI服务器
如果您正在管理多个应用程序或高容量站点,请查看
启动uwsgi服务器
以系统管理员身份启动 uwsgi 服务器
如果以更好的方式启动 uwsgi 服务器
支持传统的方式,如:init.d/rc.d 脚本, Supervisor, Daemontools 或者 inetd/xinetd,工具
现代的系统中使用:Systemd
控制uWSGI的信号
使用 safe-pidfile 选项把主进程的pid写入一个文件
uWSGI服务器响应以下信号
SIGHUP: 重新加载 worker 和 master 进程 --reload
SIGTERM: 强制重新加载 worker 和 master 进程 --die-on-term
SIGINT: 立即杀死整个uWSGi堆栈 --stop
SIGQUIT: 立即杀死整个uWSGi堆栈
使用对主进程 master-fifo 的控制比使用信号控制要更好
重新加载服务器
在主进程模式下运行时,可以不关闭主套接字而优雅地重新启动uWSGi服务器
此功能允许您修补/升级uWSGi服务器,而不会关闭与web服务器的连接并丢失一个请求。
使uWSGi优雅地重新启动的方法
# 使用kill发送信号
kill -HUP `cat /tmp/project-master.pid`
# 使用重载选项
uwsgi --reload /tmp/project-master.pid
# 如果 uwsgi 是使用 touch-reload=/tmp/somefile 方式启动
touch /tmp/somefile
# 在应用中重新加载
uwsgi.reload()
停止服务器
# 使用 kill 发送信号
kill -INT `cat /tmp/project-master.pid`
# 使用选项
uwsgi --stop /tmp/project-master.pid
主FIFO
从uWSGI 1.9.17开始,使用Unix命名管道添加了一个新的管理系统
2019-2-20 by [email protected]