天天看點

uWSGI伺服器介紹

uWSGI伺服器介紹

1、uWSGI

uWSGI是一個Web伺服器,它實作了WSGI協定、uwsgi、http等協定。Nginx中HttpUwsgiModule的作

用是與uWSGI伺服器進行交換。

要注意 WSGI / uwsgi / uWSGI 這三個概念的區分。

WSGI是一種通信協定,Flask,webpy,Django、CherryPy等等都自帶WSGI,不過性能都不好。

Web伺服器網關接口(Python Web Server Gateway Interface,縮寫為WSGI)

1、WSGI是一套接口标準協定

UWSGI同WSGI一樣是一種通信協定。

而uWSGI是實作了uwsgi和WSGI兩種協定的Web伺服器。

為什麼有了uWSGI為什麼還需要nginx?因為nginx具備優秀的靜态内容處理能力,然後将動态内容轉發

給uWSGI伺服器,這樣可以達到很好的用戶端響應。

uWSGI伺服器介紹
統一标準。

說到這,我們基本理清了 uWSGI 在 web伺服器與 web架構之間作用:uWSGI 就像一條紐帶,将 web服

務器與 web架構連接配接起來。Nginx 屬于一種高并發能力 web伺服器,Flask屬于一種 web架構,是以,

uWSGI 與 Nginx、Flask 的作用就不明而喻了。

Nginx,uWSGI,Flask 之間的對話

Nginx:Hey,uWSGI,我剛收到了一個請求,我需要你作些準備,然後由Flask來處理這個請求。

uWSGI:OK,Nginx。我會設定好環境變量,然後将這個請求傳遞給Flask處理。

Flask:Thanks uWSGI!給我一些時間,我将會把請求的響應傳回給你。

uWSGI:Alright,那我等你。

Flask:Okay,我完成了,這裡是請求的響應結果,請求把結果傳遞給Nginx。

uWSGI:Good job!Nginx,這裡是響應結果,已經按照要求給你傳遞回來了。