python独角兽 Flask + Gunicorn
1.构建程序运行所需的虚拟环境
- 安装Miniconda
- 创建虚拟环境
- 添加程序运行依赖包
- 添加Gunicorn依赖
方式一:最简单的使用 easy_install 安装或者更新
![](https://img2018.cnblogs.com/blog/839910/201811/839910-20181115104505675-1839169907.png)
方式二:下载源码安装
1 git clone git://github.com/benoitc/gunicorn.git 2 cd gunicorn 3 sudo python setup.py install
如果想让Gunicorn支持异步 workers 的话需要安装一下三个python包
1 easy_install -U greenlet 2 easy_install -U eventlet 3 easy_install -U gevent
2.调试阶段
激活虚拟环境后运行下面命令
# service为程序入口的py文件名, app是Flask应用名
# service.py 中 app = Flask(__name__)
gunicorn -w 4 -b 0.0.0.0:5000 service:app
-w 是设置运行工作线程数
-b 是设置监听IP和端口
设置0.0.0.0:5000可以通过 服务器IP:5000在外部访问,也可以设置为127.0.0.1:5000本机监听访问。
3.生产环境阶段
生产环境下,要设置为守护进程及其他一些设置,这样不会在关闭服务器连接后程序挂掉。
3.1添加配置文件gunicorn.conf
# 并行工作线程数
workers = 4
# 监听内网端口5000【按需要更改】
bind = '0.0.0.0:5000'
# 设置守护进程【关闭连接时,程序仍在运行】
daemon = True
# 设置超时时间120s,默认为30s。按自己的需求进行设置
timeout = 120
# 设置访问日志和错误信息日志路径
accesslog = './logs/acess.log'
errorlog = './logs/error.log'
3.2运行程序
建立logs目录,激活环境后运行下面命令
# gunicorn 运行模块名:应用名 -c 配置文件
gunicorn service:app -c gunicorn.conf