<5>Python的uwsgi web伺服器

深圳-風塵發表於2019-01-15

一、是什麼?

uWSGIweb伺服器,用來部署線上web應用到生產環境。uWSGI實現了WSGI協議、uwsgi協議、http協議WSGI(Web Server Gateway Interface)是一種web伺服器閘道器介面。它是一個web伺服器與web應用通訊的一種規範

 WSGI是一種通訊協議,不是伺服器

 uWSGIweb伺服器

 uwsgi協議是一種線路協議而不是通訊協議,是fcgi協議的10

 uwsgi協議常用於uWSGI伺服器與其他網路伺服器的資料通訊。

 uwsgi協議用於定義傳輸資訊的型別。

 

二、怎麼做?

uwsgi可以用命令列來執行,也可以用配置檔案來執行。

命令列語法:

,命令列引數:  –<option>

 

因為在實際環境中使用配置檔案來管理,所以這裡只介紹用配置檔案的方式.ini  .xml  .json  .yaml

官方推薦使用.ini

 

.ini語法:

key = value

# 為註釋符號

true  false 為布林值

,執行配置檔案命令uwsgi my.ini  = uwsgi –ini my.ini

 

.ini可用配置引數:

# socket: 地址和埠號(需要和nginx搭配使用;http-socket是通過http協議執行[效能差])  socket = 127.0.0.1:5000

processes: 開啟的程式數

chdir: 指定執行目錄  before apps loading

wsgi-file: 載入wsgi-file

stats: 在指定地址上,開啟狀態服務

master: 允許主程式存在

daemonize: 使程式在後臺執行,並將日誌列印到指定的日誌檔案

pidfile: 指定pid檔案的位置,記錄程式的pid

vacuum: 當伺服器退出時自動清理環境(刪除Unix socket檔案和pid檔案)

disable-logging: 不記錄請求資訊的日誌,只記錄錯誤以及uwsgi內部訊息到日誌中

 

uWSGI命令:

啟動:uwsgi my.ini

過載:uwsgi –reload my.pid

重啟:uwsgi –stop my.pid

 

工具:uwsgitop  配合status使用

 

相關文章