UWSGI组成
一、首先我们要知道uwsgi的组成,这样才能在需要配置时精准找到需要配置的内容。uwsgi组成部分包含
- 核心(包含配置实现、进程管理、socket创建、监控、日志、共享内存区域、IPC、进群成员和UWSGI提交服务器)
- 请求插件(为各种语言和平台实现应用服务器接口:WSGI, PSGI, Rack, Lua WSAPI, CGI, PHP, Go …)
- 网关(实现负载均衡、代理、路由)
- Emperor(实施大规模实例管理和监控)
- 循环引擎(实现事件和并发,组件可以在preforking,线程,异步/事件和绿色线程/协程模式下运行。支持各种技术,包括uGreen,Greenlet,Stackless,Gevent,Coro :: AnyEvent,Tornado,Goroutines、Fibers)
官方介绍地址:官方文档地址
二、配置选项
UWSGI配置选项:官方配置地址
参数解释
一、master
master
argument: no_argument
shortcut: -M
parser: uwsgi_opt_true
help: enable master process
是否启用主进程,示例
master:true
配置示意:启用主进程,启用主进程的话,重启服务器时会等待所有请求结束。
使用场景:需要更新uwsgi时,可以通过设置master:true来实现,这样重启时会跳过socket初始化,重用之前的socket。
注意事项: 需要使用 信号 SIGHUP 才能实现等待请求结束,如果使用信号SIGTERM将不会等待请求结束,但会重用socket。