greenlet是乙個輕量級的協程庫,gevent是基於greenlet的網路庫。gunicorn是支援wsgi協議的http server,gevent是它支援的模式之一。
pip install gunicorn3. 啟動pip install gevent
gunicorn啟動有很多引數,可以寫到配置檔案裡,例如
config.txt
有了配置檔案之後,啟動workers = 10 ##開啟的程序數量timeout = 600 ##超時
worker_class = "gevent" ###使用gevent模式
bind = "0.0.0.0:8383" ##繫結socket
pidfile = '/var/run/gunicorn.pid'
accesslog = '/var/log/gunicorn_acess.log' ##請求日誌路徑
errorlog = '/var/log/gunicorn_error.log' ##錯誤日誌路徑
loglevel = 'warning' ##輸出errorlog的顆粒度
capture_output = true #重定向標準輸出到錯誤日誌
可以加-d 將服務放到後台執行
gunicorn啟動的時候,將run.py import匯入,所以指令碼並不是入口檔案,__name__的值不等於__main__,所以不會執行下面的**塊。
if __name__ == '__main__':
gunicorn 部署 flask 應用
一般比較習慣使用uwsgi進行部署django,flask應用。但,有時受許可權限制,無法安裝uwsgi,所以就使用gunicorn進行部署。之前使用python3的使用,發現 supervisor是不支援。所以就不打算用supervisor了。純粹介紹gunicorn 簡單部署方法,完整流程。環境...
使用gunicorn部署Flask
gunicorn是乙個python wsgi的web服務框架,只支援在unix系統上執行,於ruby的unicorn專案。gunicorn使用prefork master worker模型,能夠與各種wsgi web框架協作。gunicorn安裝非常簡單,使用命令pip install guncor...
使用gunicorn部署flask專案
目錄web框架致力於如何生成html 而web伺服器用於處理和響應http請求。web框架和web伺服器之間的通訊,需要一套雙方都遵守的介面協議。wsgi協議就是用來統一這兩者的介面的。常用的wsgi容器有gunicorn和uwsgi,但gunicorn直接用命令啟動,不需要編寫配置檔案,相對uws...