python独角兽 Flask + Gunicorn

1.构建程序运行所需的虚拟环境

  • 安装Miniconda
  • 创建虚拟环境
  • 添加程序运行依赖包
  • 添加Gunicorn依赖
方式一:最简单的使用 easy_install 安装或者更新
  

 方式二:下载源码安装

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
posted @ 2018-11-15 10:47  李永三  阅读(2983)  评论(0编辑  收藏  举报