hand
_1_14_10
4
返回栏目
1k
2k
0.4k
0.6k
0.9k
0.7k
3k
2k
0.1k
1k
0k
1k
0k
0.4k
0.3k
0.1k
0.6k
0k
1k
3k
2k
0k
0k
0.4k
2k
1k
0k
6k
0.8k
1k
0.5k
2k
0k
0k
0k
2k
0k
4k
2k
1k
1k
2k
0k
0.5k
0k
1k
0.2k
0.3k
0.1k
0k
0k
0.8k
1k
0.6k
0k
0k
2k
0.6k
1k
2k
2k
0.6k
0.6k
0.5k
1k
2k
0.5k
0.1k
0.2k
4k
0k
0.1k
0.8k
1k
0.3k
0k
0.3k
0.1k
1k
8k
0.1k
0.7k
0.1k
0.3k
0.9k
0.2k
4k
0.2k
6k
3k
3k
1k
3k
0.1k
1k
0.2k
0k
0.7k
0.4k
2k
2k
0.5k
0.8k
5k
0.1k
0.3k
0.3k
0.5k
0.1k
1k
0k
0.7k
0.2k
2k
2k
1k
6k
3k
1k
2k
1k
2k
2k
1k
0k
0k
1k
0k
0k
0.3k
0.3k
0.2k
0k
0.3k
0k
1k
0.1k
0.6k
0k
0k
0k
0k
0k
0.1k
0k
0k
0k
0.2k
0k
0.2k
0k
0k
0k
0k
0k
0k
0k
0.9k
1k
2k
0.8k
0.4k
0k
0k
0k
0.5k
0k
0k
0k
0k
0.4k
0k
0k
0.1k
返回服务器栏目
作者:
贺及楼
成为作者
更新日期:2024-05-08 12:42:44
https://www.bookstack.cn/read/uwsgi-docs-2.0-zh/10968bff8b1ff094.md#cheaper-busyness-max
好文章
大致命令 | 模式名 | 英文名 | 解释 |
---|---|---|---|
--spooler-harakiri <n> option |
后台处理程序任务设置剖腹模式 | spooler任务设置harakiri模式 | |
--mule-harakiri <n> |
越境进程设置剖腹模式 | mule进程设置harakiri模式 | |
cgi-mode |
web端模式 | cgi模式 | 响应将不再是HTTP可用的响应,而是cgi响应(会增加Status:这个请求头) |
emperor |
君主模式 | Emperor模式 | |
emperor-tyrant |
君主模式的暴君模式 | emperor的tyrant模式 | |
君主模式开启血领主模式 | emperor开启bloodlord模式 | ||
收割机模式 | reaper模式 | 没处理一个请求,服务器就会调用waitpid(-1)来清除所有的僵尸进程。 如果你在你的app中生成了子进程,结束后又成为了很多僵尸进程,那么你可以开启这个选项。 但遇到这种情况你更应该修复你这种子进程的使用方式(如果可以的话) | |
async |
异步模式 | async | |
--cheaper <n> |
最少模式 | cheap模式 | 启动的时候只分配n个工作进程 |
log一般不用uwsgi,用supervisor
http = :8000 # 对外提供 http 服务的端口
socket = 127.0.0.1:8001 #the local unix socket file than commnuincate to Nginx 用于和 nginx 进行数据交互的端口
chdir =/home/opadm/mms_webserver/src # the base directory (full path) django 程序的主目录
master = true
#启动主进程,来管理其他进程,其它的uwsgi进程都是这个master进程的子进程,如果kill这个master进程,相当于重启所有的uwsgi进程。
wsgi-file =src/wsgi.py # Django's wsgi file
processes = 100 # maximum number of worker processes
threads = 10 #thread numbers startched in each worker process
cheaper = 10 #一个高阶的cheap模式,在启动的时候只会分配n个工作进程,并使用自适应算法启动新的进程,必须小于上面的processes数量
idle = 3600 #在经过sec秒的不活跃状态的进程会被销毁(进入了cheap模式),并最少保留cheaper指定的进程数
stats = 127.0.0.1:9000 #monitor uwsgi status 通过该端口可以监控 uwsgi 的负载情况,看下一篇uwsgitop
harakiri = 60 #设置一个请求的超时时间(秒),如果一个请求超过了这个时间,则请求被丢弃
harakiri-verbose = true#当一个请求被harakiri杀掉会,会输出一条日志
memory-report = true #开启内存使用情况报告
reload-mercy = 10 #设置平滑的重启(直到处理完接收到的请求)的长等待时间(秒)
reload-on-as= 1024 #设置工作进程使用虚拟内存超过N MB就回收重启
reload-on-rss=100#设置工作进程使用物理内存超过N MB就回收重启
auto-procname = true #自动给进程命名
# 为进程指定前缀
procname-prefix = 你的程序的进程的名字,可以用xxx_
procname-prefix-spaced = 你的程序的进程的名字,可以用xxx_
max-requests=500000 #设置工作进程每处理N个进程就会被回收重启
socket-timeout=10 #设置socket超时时间,默认4秒
limit-post=4096 #限制http请求体的大小(Bytes)
vacuum = true # clear environment on exit
disable-logging = true #不记录request日志,只记录错误日志
#log-syslog = true#将日志打印到syslog上
daemonize = /home/opadm/log/uwsgi.log# 后台运行,并输出日志
stats=./uwsgi.status
命令:
ps aux | grep 你的进程名
ps -ef | grep 你的进程名
观看情况,设定你大概的内存,详细命令内容看:
Linux - 基本命令 - ps aux - 看进程
Linux - 基本命令 - ps -ef - 看进程
服务器
整章节共174节
快分享给你的小伙伴吧 ~