工作中使用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配置文件相关推荐

  1. 【Gunicorn】gunicorn配置文件详解

    python常见的web部署搭配nginx+gunicorn,下面记录一下gunicorn的配置使用. 安装gunicorn pip install gunicorn gunicorn -h # 查看 ...

  2. [flask]gunicorn配置文件

    配置文件 #!/home/xx/.virtualenvs/xx/bin/python # encoding: utf-8import multiprocessing# 监听端口 bind = '0.0 ...

  3. CentOS7部署Flask+Gunicorn+Nginx+Supervisor

    1. Git客户端 Win10安装git for windows 1.1 设置Git全局参数 打开Git Bash $ git config --global user.name "Alic ...

  4. nginx+docker+gunicorn+flask部署到云服务器

    项目结构图: app:app 第一个app是文件名,第二个app是flask实例 1. nginx 安装:apt instll nginx 配置:在/etc/nginx/conf.d/目录下新建配置文 ...

  5. flask+gunicorn部署

    1.flask flask实际上就是用来作为python部署服务的框架,方便别人调用你写的服务.本文主要记载下自己的使用过程 1.1.flask安装 pip install flask 1.2.fla ...

  6. gunicorn 安装部署详解

    Gunicorn是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server. 和大多数的web框架兼容,并具有实现简单,轻量级,高性能等特点. gunicorn 安装 ...

  7. Gunicorn配置详解

    通过gunicorn启动Flask项目的简单命令: gunicorn -w 4 -b 0.0.0.0:5000 app:app 其中-w设置最大进程数,-b绑定IP和端口,第一个app为app.py的 ...

  8. flask + gunicorn部署(非常详尽)

    flask + gunicorn部署(非常详尽) 1.首先新建一个目录创建一下几个文件 app.py 就是非常普通的flask文件 from flask import Flaskapp = Flask ...

  9. gunicorn的基本使用

    一: gunicorn安装与启动 1: 安装对应的异步模块 pip install gevent 2: 安装gunicorn pip install gunicorn -i 3: 命令方式启动项目: ...

最新文章

  1. python怎样定义一个数组_Python创建数组
  2. ios怎么玩java模拟器游戏_新方式玩iOS手游 水果模拟器让电脑运行苹果iOS
  3. python具有可扩展的特性吗_1. 以下()不是python的特征 A 、 收费使用 B 、 跨平台 C 、 可拓展 D 、 可嵌入...
  4. html在线音频播放器实训总结,HTML5音乐列表播放器SMusic开发总结
  5. WireShare抓包在ssl协议里面提示(Level: Fatal, Description: Protocol Version)
  6. 2020年二级计算机考试真题,2020年3月计算机等级考试《二级MS Office高级应用》历年真题-试题答案...
  7. python颜色识别原理_用opencv-python实现颜色检测
  8. 安全验证框架使用笔记001---Shiro简介
  9. mysql回表慢sql_MySQL 的覆盖索引与回表
  10. 如何在form初始化时自动隐藏FOLDER列
  11. SpringBoot------拦截器Filter的使用
  12. linux进程属性,linux进程属性
  13. 【名风自动点击王】支持前台和后台鼠标键盘模拟游戏生活好帮手|IP网页自动点击器
  14. 不要上网更新计算机系统的补丁程序,360安全卫士更新补丁后系统不能联网怎么办...
  15. win10家庭版开启远程桌面(带rdpwrap.ini)
  16. 单个圆孔菲涅耳衍射的matlab模拟,矩孔和圆孔菲涅耳衍射的计算机模拟
  17. 计算机专业认识实习目的,计算机专业实习目的及意义
  18. 中华吸血鬼恶意病毒分析
  19. word怎么恢复自动保存_如何使用自动恢复自动保存Word文档并恢复丢失的更改
  20. python课程作业-贪吃蛇

热门文章

  1. .htaccess技巧: URL重写(Rewrite)与重定向(Redirect)
  2. beautifulsoup的用法
  3. Unix 时间戳 (Unix Timestamp) 与 Windows 时间转换工具
  4. OOA/OOD/OOP(了解)
  5. 解决Android 8.0和9.0无法获取SSID (unknow ssid)
  6. 数字体验词汇表:您需要了解的最重要术语
  7. PHP+MySql注册登陆页面开发完整代码
  8. UDAL - DBProxy internal error问题解决
  9. 威联通NAS提示“拒绝了我们的连接请求”的解决办法
  10. 高质量的原创对于搜索引擎来说是非常的友好的