nginx+uWSGI+django部署web服務器

1.概念

WSGI / uwsgi / uWSGI 這三個概念的區分:

  WSGI 是一種通信協議,也叫做 Web 服務器網關接口

  uwsgi 是一種線路協議而不是通信協議,在此常用於在 uWSGI 服務器與其他網絡服務器的數據通信。

  uWSGI 是實現了 uwsgi 和 WSGI 兩種協議的 Web 服務器。

nginx(開源的高性能HTTP服務器和反向代理):

  作爲 web 服務器,它處理靜態文件和索引文件效果非常高,配合uWSGI服務器會更加安全

  它的設計非常注重效率,最大支持 5 萬個併發連接,但只佔用很少的內存空間

  穩定性高,配置簡潔

  強大的反向代理和負載均衡功能,平衡集羣中各個服務器的負載壓力應用

nginx 和 uWISG 服務器之間配合工作:

  首先瀏覽器發起 http 請求到 nginx 服務器,Nginx 根據接收到請求包,進行 url 分析,判斷訪問的資源類型:如果是靜態資源,直接讀取靜態資源返回給瀏覽器。如果請求的是動態資源就轉交給 uwsgi服務器,uwsgi 服務器根據自身的 uwsgi 和 WSGI 協議,找到對應的 Django 框架,Django 框架下的應用進行邏輯處理後,將返回值發送到 uwsgi 服務器,然後 uwsgi 服務器再返回給 nginx,最後 nginx將返回值返回給瀏覽器進行渲染顯示給用戶。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章