管理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

FIFO

从uWSGI 1.9.17开始,使用Unix命名管道添加了一个新的管理系统


2019-2-20 by achxku@163.com

管理uWSGI服务器的更多相关文章

  1. [翻译]用 Puppet 搭建易管理的服务器基础架构(4)

    我通过伯乐在线翻译了一个Puppet简明教程,一共分为四部分,这是第四部分. 原文地址:http://blog.jobbole.com/89214/ 本文由 伯乐在线 - Wing 翻译,黄利民 校稿 ...

  2. [翻译]用 Puppet 搭建易管理的服务器基础架构(3)

    我通过伯乐在线翻译了一个Puppet简明教程,一共分为四部分,这是第三部分. 本文由 伯乐在线 - Wing 翻译,黄利民 校稿.未经许可,禁止转载!英文出处:Manuel Kiessling.欢迎加 ...

  3. [翻译]用 Puppet 搭建易管理的服务器基础架构(1)

    我通过伯乐在线翻译了一个Puppet简明教程,一共分为四部分,这是第一部分. 原文地址:http://blog.jobbole.com/87679/ 本文由 伯乐在线 - Wing 翻译,黄利民 校稿 ...

  4. 使用ansible批量管理远程服务器

    使用ansible批量管理远程服务器 背景 本地需要管理远程的一批服务器,主要执行以下任务: 1) 将本地的文件复制到远端所有服务器: 2) 需要在远程服务器中执行一个个命令: 远端服务器路径并非完全 ...

  5. Windows 上的 SSH?使用 PowerShell Remoting 远程管理 Windows 服务器

    作者:陈计节 个人博客:https://blog.jijiechen.com/post/powershell-remoting/ 在 Linux/Unix 世界里 SSH 是个好东西,SSH 是 Se ...

  6. Gravitational Teleport 开源的通过ssh && kubernetes api 管理linux 服务器集群的网关

    Gravitational Teleport 是一个开源的通过ssh && kubernetes api 管理linux 服务器集群的网关 支持以下功能: 基于证书的身份认证 ssh ...

  7. supervisor管理uwsgi

    1. 前言 传统的管理uwsgi服务: 1. 通过shell脚本来编写start restart stop函数来控制 2. 比较麻烦,有时候控制写的烂,还会出现意想不到的错误 supervisor进行 ...

  8. 管理Linux服务器的用户和组

    管理Linux服务器的用户和组 Linux操作系统是一个多用户多任务的操作系统,允许多个用户同时登录到系统,使用系统资源. 为了使所有用户的工作顺利进行,保护每个用户的文件和进程,规范每个用户的权限, ...

  9. 使用OpenSSH远程管理Linux服务器

    一.使用OpenSSH远程管理Linux服务器 sshd是OpenSSH的服务器端守护进程,与之对应的Windows下客户端软件有SecureCRT/Xshell/PuTTY等. OpenSSH一般为 ...

随机推荐

  1. Java实现连接FTP服务并传递文件

    public class FtpClientUtil { private String host; private int port; private String username; private ...

  2. 编写高质量代码:Web前端开发修炼之道(一)

    最近老大给我们买来一些技术方面的书籍,其实很少搬着一本书好好的完整的看完过,每每看电子档的,也是打游击式的看看这章,瞅瞅那章,在那5本书中挑了一本比较单薄的<编写高质量代码web前端开发修炼之道 ...

  3. MySql 碎片

    查看某个表所占空间,以及碎片大小. select table_name,engine,table_rows,data_length+index_length length,DATA_FREE from ...

  4. 基于中间件的RBAC权限控制

    RBAC 是什么 RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联. 在 Django 中,权限就是用户对一个包含正则表达式 url ...

  5. 去掉小程序button元素的边框

    button::after {     display:none }

  6. [转] javascript 判断对象是否存在的10种方法总结

    [From] http://www.jb51.net/article/44726.htm Javascript语言的设计不够严谨,很多地方一不小心就会出错.举例来说,请考虑以下情况.现在,我们要判断一 ...

  7. [jQuery] 在线引用地址

    百度静态资源公共库: http://libs.baidu.com/jquery/1.9.1/jquery.js jQuery网站: http://code.jquery.com/jquery-1.9. ...

  8. java中的线程(2):如何正确停止线程之3种常见停止方式

    1.常见停止方式 自定义线程,其中含退出标志位,在run中判断它. 使用interrupt()方法中断线程 使用stop方法暴力终止(已经弃用) 2.使用标志位 class TestThread ex ...

  9. Python+Selenium之通过batch跑脚本

    例如在执行路径C:\Portal_Scripts\Scripts下的脚本CreateIndicativeBOP.py,可以在notepad里面编写如下: @echo off cd  C:\Portal ...

  10. 个人笔记——Android网络技术

    一.WebView 的用法 Android 提供WebView 的用法,可以在自己的应用程序里嵌入一个浏览器 webView.getSettings().setJavaScriptEnabled(tr ...