1. 程式人生 > >python獨角獸 Flask + Gunicorn

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