nginx
安裝nginx,在 /usr/local/nginx 目錄下, 修改conf文件夾下的 nginx.conf 文件
server {
# python server
listen 8088;
server_name localhost;
location / {
proxy_pass http://127.0.0.1:5000;
}
}
啓動nginx
>/usr/local/nginx/sbin/nginx
flask
新建server.py並寫入
from flask import Flask
app = Flask(__name__)
@app.route('/', methods=['GET'])
def hello():
return 'hello'
if __name__ == '__main__':
app.run(debug=True,host='0.0.0.0',port=5000)
gunicorn
命令行進入server.py所在目錄
- 開啓gunicorn進程:
gunicorn -w worker數量 -b ip:端口號 運行文件名:flask實例名
例
gunicorn -D -w 3 -b 127.0.0.1:5000 server:app
- 關閉gunicorn:
先找到gunicorn的pid
pstree -ap | grep gunicorn
然後殺死進程(假設17556爲pid)
kill -9 17556
說明
gunicorn命令的參數:
- D 表示後臺運行
- w 表示有3 個 工作線程(感覺有些類似 nginx 的 master-worker 模型)
- b 指定ip 和端口
- 這裏採用本機訪問, 主要是爲了使用nginx 進行代理, 方便管理
- application 表存放 寫着全局變量 app 的那個工程文件夾
- 在我們的這個工程中, 即包含server.py 的那個文件,app 爲全局變量 (app = Flask(name))