gunicorn配置

  # not support multiprocess, because offset save in memory
  workers = 1
  bind = ["127.0.0.1:8000"]
  backlog = 2048
  worker_class = 'egg:meinheld#gunicorn_worker'
  worker_connections = 2000
  daemon = False
  debug = False
  keepalive = 60
  proc_name = 'main'
  pidfile = './log/gunicorn.pid'
  errorlog = './log/gunicorn.log'

workers

  # 进程数量,默认为1
  # 用于处理工作进程的数量
  # worker推荐的数量为当前的CPU个数*2 + 1。
  # 计算当前的CPU个数方法并设置:
  # 计算当前的CPU个数方法并设置:
  import multiprocessing
  workers = multiprocessing.cpu_count() * 2

worker_class

   工作模式 默认值 sync 一次只处理一个请求

多个工作模式

   同步Worker:sync 默认模式,也就是一次只处理一个请求
   异步Worker:通过Eventlet、Gevent实现的异步模式
   异步IO Worker:目前支持gthread和gaiohttp两种类型

worker_connections

    客户端最大同时连接数 默认 1000

threads 线程数

    threads 线程数 默认值 1
    此配置只适合gthread进程工作方式 因为gevent使用写协程工作方式

max_requests 最大请求书

    max_requests 最大请求数 默认值 0
    为0时 禁止worker的自动重启
    这个方法主要是防止内存泄露
    当超过max_requests时,会重启woker

keepalive 连接上等待请求的秒数

  默认值 2 一般设定在1-5秒之间

你可能感兴趣的:(gunicorn配置)