gunicorn

Posted wxbn

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gunicorn相关的知识,希望对你有一定的参考价值。

参考连接 http://docs.gunicorn.org/en/latest/install.html

https://blog.csdn.net/dutsoft/article/details/51452598

安装 pip install gunicorn 

基于 json tex2 板子 pip 版本对gunicorn 安装支持不稳定 特别是gunicron 19.0.3 版本之上的

 这里可以用sudo apt-get install gunicorn 安装稳定版本

对于启动项目可能会出现的 bug 

gunicorn 会加载虚拟环境之外 也就是说 在虚拟环境中会加载虚拟环境之外的安装位置 这里不会抛出 关于gunicorn 的错误

基本的解决思路 先检查你的安装位置  退出虚拟环境 卸载gunicorn 

$ deactivate

sudo pip uninstall gunicorn

再次进入虚拟环境:
$ pyenv activate
(env) $ pip install gunicorn

关于gunicorn 的启动方式

指定为gevent 这个地方需要在项目禁止线程的使用,具体原因我也没找到, 可能与我的项目其他配置有关系

gunicorn -k gevent -b 127.0.0.1:5000 manage:app

指定进程启动

gunicorn -w 2 -b 127.0.0.1:5000 manage:app

最常用的是配置写入文件进行启动 

gunicorn -c gunicorn.conf manage:app

配置文件

import os
import gevent.monkey
gevent.monkey.patch_all()

import multiprocessing

debug = True
loglevel = ‘debug‘
bind = ‘0.0.0.0:8800‘
pidfile = ‘log/gunicorn.pid‘
logfile = ‘log/debug.log‘

#启动的进程数
workers = multiprocessing.cpu_count() * 2 + 1
worker_class = ‘gunicorn.workers.ggevent.GeventWorker‘

x_forwarded_for_header = ‘X-FORWARDED-FOR‘

 

查看进程 pstree -ap | grep gunicorn

用gevent 启动项目 一定要注意配置日志文件 后台无法打印 debug 调试

关闭gunicorn 我用的是kill 直接将主进程杀死

 

以上是关于gunicorn的主要内容,如果未能解决你的问题,请参考以下文章