uwsgi基础——管理

原文:http://projects.unbit.it/uwsgi/wiki/Management

管理uWSGI server

系统的管理员向主进程发送信号来控制worker进程池。uwsgi也能通过“pidfile”写入主进程id --pidfile <filename> 选项。'pidfile'是一个纯文本文件,包含进程id。文件用来发送信号的可靠路径。

Starting the server

启动uwsgi服务器是系统管理员的一个任务,想启动webserver。它不是web server启动的任务。(即使被明显允许)

uwsgi服务启动以来操作系统。

现在的系统可以依照着这个表:

    Debian/Ubuntu -> Upstart (official uwsgi package, available starting from Wheezy/12.04, provides init.d solution, reading of /usr/share/doc/uwsgi/README.Debian.gz is recommended)

    Fedora -> SystemdIntegration

    OSX -> launchd

    Solaris -> SMF

On 'classic' operating systems you can use init.d/rc.d scripts, tools like supervisor, daemontools or inetd/xinetd services

重载守护进程

按上面的意思,uwsgi主进程是uwsgi的核心组件。信号reload所有的workers和主进程是SIGTERM,下面是暴力重载的命令行的例子:

kill -TERM `cat /tmp/project-master.pid`

修复守护进程

uwsgi 的一个很好的优势是它能在不丢失请求的情况下逐渐重启每个worker。

例如,uwsgi可以被告知在处理完当前请求后重新加载code。

# using kill to send the signal
kill -HUP `cat /tmp/project-master.pid`

or

uwsgi --reload /tmp/project-master.pid

or

# if uwsgi was started with --touch-reload=/tmp/somefile
touch /tmp/somefile

Or from Python:

uwsgi.reload()

or Ruby

UWSGI.reload

停止守护进程

如果前台运行,非常用以:点击 Ctrl-C 停止和退出了服务。然而,当你处理后台进程,你需要使用pid文件:

kill -INT `cat /tmp/project-master.pid`

or

uwsgi --stop /tmp/project-master.pid

多实例

uwsgi emperor 是一个特殊的模式,允许你管理多个uwsgi实例、应用。

转载于:https://www.cnblogs.com/wanself/archive/2012/11/27/2791316.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值