gunicorn配置文件
工作中使用gunicorn作为服务器的时候,通过配置文件来启动的,gunicorn启动参数可以从--help中获取,但是配置文件中,没有,下面是一些常见的选项的配置和说明
import logging
import logging.handlers
from logging.handlers import WatchedFileHandler
import os
bind = '0.0.0.0:9010' #绑定的ip已经端口号
backlog = 512 #监听队列
chdir = '/home/test/server/bin' #gunicorn要切换到的目的工作目录
timeout = 30 #超时
worker_class = 'gevent' #使用gevent模式,还可以使用sync 模式,默认的是sync模式
workers = 16 #进程数
threads = 2 #指定每个进程开启的线程数
loglevel = 'info' #日志级别,这个日志级别指的是错误日志的级别,而访问日志的级别无法设置
access_log_format = '%(t)s %(p)s %(h)s "%(r)s" %(s)s %(L)s %(b)s %(f)s" "%(a)s"' #设置gunicorn访问日志格式,错误日志无法设置
其每个选项的含义如下
"""
h remote address
l '-'
u currently '-', may be user name in future releases
t date of the request
r status line (e.g. ``GET / HTTP/1.1``)
s status
b response length or '-'
f referer
a user agent
T request time in seconds
D request time in microseconds
L request time in decimal seconds
p process ID
{Header}i request header
{Header}o response header
"""
accesslog = "/dev/null" #访问日志文件的路径
errorlog = "/dev/null" #错误日志文件的路径
公司的server日志都是按天分割的,多进程中TimeRotatingFileHandler分割日志还是会出问题的,于是便使用了
WatchedFileHandler来记录日志,在server机器上,凌晨加一个自动任务,这样日志就能切割了,但是gunicorn
的logging默认使用的是FileHandler,但是一旦当自动任务备份的时候,它不会自动重新创建,于是便把原有的FileHandler流重定向到了/dev/null,自己再另外添加我想要的Handler即可,如下:
"""
acclog = logging.getLogger('gunicorn.access')
acclog.addHandler(WatchedFileHandler('/home/test/server/log/gunicorn_access.log'))
acclog.propagate = False
errlog = logging.getLogger('gunicorn.error')
errlog.addHandler(WatchedFileHandler('/home/test/server/log/gunicorn_error.log'))
errlog.propagate = False
"""
公司gunicorn 与nginx配合使用,nginx只需要设置一个反向代理
proxy_pass http://127.0.0.1:9010 ;即可
"""
gunicorn配置文件相关推荐
- 【Gunicorn】gunicorn配置文件详解
python常见的web部署搭配nginx+gunicorn,下面记录一下gunicorn的配置使用. 安装gunicorn pip install gunicorn gunicorn -h # 查看 ...
- [flask]gunicorn配置文件
配置文件 #!/home/xx/.virtualenvs/xx/bin/python # encoding: utf-8import multiprocessing# 监听端口 bind = '0.0 ...
- CentOS7部署Flask+Gunicorn+Nginx+Supervisor
1. Git客户端 Win10安装git for windows 1.1 设置Git全局参数 打开Git Bash $ git config --global user.name "Alic ...
- nginx+docker+gunicorn+flask部署到云服务器
项目结构图: app:app 第一个app是文件名,第二个app是flask实例 1. nginx 安装:apt instll nginx 配置:在/etc/nginx/conf.d/目录下新建配置文 ...
- flask+gunicorn部署
1.flask flask实际上就是用来作为python部署服务的框架,方便别人调用你写的服务.本文主要记载下自己的使用过程 1.1.flask安装 pip install flask 1.2.fla ...
- gunicorn 安装部署详解
Gunicorn是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server. 和大多数的web框架兼容,并具有实现简单,轻量级,高性能等特点. gunicorn 安装 ...
- Gunicorn配置详解
通过gunicorn启动Flask项目的简单命令: gunicorn -w 4 -b 0.0.0.0:5000 app:app 其中-w设置最大进程数,-b绑定IP和端口,第一个app为app.py的 ...
- flask + gunicorn部署(非常详尽)
flask + gunicorn部署(非常详尽) 1.首先新建一个目录创建一下几个文件 app.py 就是非常普通的flask文件 from flask import Flaskapp = Flask ...
- gunicorn的基本使用
一: gunicorn安装与启动 1: 安装对应的异步模块 pip install gevent 2: 安装gunicorn pip install gunicorn -i 3: 命令方式启动项目: ...
最新文章
- python怎样定义一个数组_Python创建数组
- ios怎么玩java模拟器游戏_新方式玩iOS手游 水果模拟器让电脑运行苹果iOS
- python具有可扩展的特性吗_1. 以下()不是python的特征 A 、 收费使用 B 、 跨平台 C 、 可拓展 D 、 可嵌入...
- html在线音频播放器实训总结,HTML5音乐列表播放器SMusic开发总结
- WireShare抓包在ssl协议里面提示(Level: Fatal, Description: Protocol Version)
- 2020年二级计算机考试真题,2020年3月计算机等级考试《二级MS Office高级应用》历年真题-试题答案...
- python颜色识别原理_用opencv-python实现颜色检测
- 安全验证框架使用笔记001---Shiro简介
- mysql回表慢sql_MySQL 的覆盖索引与回表
- 如何在form初始化时自动隐藏FOLDER列
- SpringBoot------拦截器Filter的使用
- linux进程属性,linux进程属性
- 【名风自动点击王】支持前台和后台鼠标键盘模拟游戏生活好帮手|IP网页自动点击器
- 不要上网更新计算机系统的补丁程序,360安全卫士更新补丁后系统不能联网怎么办...
- win10家庭版开启远程桌面(带rdpwrap.ini)
- 单个圆孔菲涅耳衍射的matlab模拟,矩孔和圆孔菲涅耳衍射的计算机模拟
- 计算机专业认识实习目的,计算机专业实习目的及意义
- 中华吸血鬼恶意病毒分析
- word怎么恢复自动保存_如何使用自动恢复自动保存Word文档并恢复丢失的更改
- python课程作业-贪吃蛇
热门文章
- .htaccess技巧: URL重写(Rewrite)与重定向(Redirect)
- beautifulsoup的用法
- Unix 时间戳 (Unix Timestamp) 与 Windows 时间转换工具
- OOA/OOD/OOP(了解)
- 解决Android 8.0和9.0无法获取SSID (unknow ssid)
- 数字体验词汇表:您需要了解的最重要术语
- PHP+MySql注册登陆页面开发完整代码
- UDAL - DBProxy internal error问题解决
- 威联通NAS提示“拒绝了我们的连接请求”的解决办法
- 高质量的原创对于搜索引擎来说是非常的友好的