最新要闻

广告

手机

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

iphone11大小尺寸是多少?苹果iPhone11和iPhone13的区别是什么?

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

警方通报辅警执法直播中被撞飞:犯罪嫌疑人已投案

家电

今亮点!Django uwsgi问题解析

来源:博客园


(资料图片仅供参考)

通常情况下,部署Django应用到生产环境时都会通过uwsgi部署,uwsgi一些配置项配置问题有可能会导致服务出现502状态码或者其他超时等的情况

常用到的配置项如下:

reload-on-as = 600reload-on-rss = 500evil-reload-on-rss = 800ignore-sigpipe = trueignore-write-errors = truedisable-write-exception = truebuffer-size=16384http-timeout=300

1. reload-on-as/reload-on-rss/evil-reload-on-rss: 内存占用相关配置,单位M,当worker占用内存超过这些配置时该worker会重启,worker频繁重启可能会导致每次请求worker都要重启加载所有的资源,建立所有的数据库连接,进而导致正常的api请求超时

2.buffer-size: 请求头大小限制,后台管理经常会出现超出默认配置4096的情况,此时会出现502状态码

定位流程:

查看uwsgi.log日志,观察是否有异常的重启日志

关键词: 是否有异常 或者其他 经常会出现