Python - Web 伺服器



Python 足夠通用,可以建立許多型別的應用程式和程式,這些應用程式和程式驅動網際網路或其他計算機網路。網際網路的一個重要方面是 Web 伺服器,它是客戶端-伺服器模型的基礎。在本章中,我們將看到一些使用純 Python 語言建立的 Web 伺服器。

Gunicorn

Gunicorn 是一款獨立的 Web 伺服器,它有一箇中央主程序負責管理不同型別的已啟動工作程序。然後,這些工作程序直接處理和處理請求。所有這些都可以配置和調整以滿足生產場景的不同需求。

重要特性

  • 它支援 WSGI,可與任何執行 Python 應用程式和框架的 WSGI 一起使用
  • 它也可以用作 Paster(例如 Pyramid)、Django 的開發伺服器、web2py 等的直接替換
  • 提供各種工作程式型別/配置的選擇以及自動工作程式程序管理
  • 透過同步和非同步工作程式支援 HTTP/1.0 和 HTTP/1.1(保持活動)
  • 帶有 SSL 支援
  • 可透過鉤子擴充套件

CherryPy WSGI 伺服器

CherryPy 是一個自包含的 Web 框架,因為它可以在沒有其他軟體的情況下獨立執行。它擁有自己的 WSGI、符合 HTTP/1.1 的 Web 伺服器。由於它是一個 WSGI 伺服器,因此也可以用於服務任何其他 WSGI Python 應用程式,而無需繫結到 CherryPy 的應用程式開發框架。

重要特性

  • 它可以執行在 WSGI 上執行的任何 Python Web 應用程式。
  • 它可以處理靜態檔案,並且可以僅用於服務檔案和資料夾。
  • 它是執行緒池化的。
  • 它帶有對 SSL 的支援。
  • 它是一種易於適應、易於使用的純 Python 替代方案,它健壯可靠。

Twisted Web

它是一個附帶 Twisted 網路庫的 Web 伺服器。雖然 Twisted 本身是“一個事件驅動的網路引擎”,但 Twisted Web 伺服器在 WSGI 上執行,並且能夠為其他 Python Web 應用程式提供動力。

重要特性

  • 它執行 WSGI Python 應用程式
  • 它可以充當 Python Web 伺服器框架,允許您使用該語言對其進行程式設計以用於自定義 HTTP 服務目的
  • 它透過在 HTTP 請求時執行的 Python 指令碼 (.rpy) 提供簡單快速的原型設計能力
  • 它具有代理和反向代理功能
  • 它支援虛擬主機
  • • 它甚至可以服務 Perl、PHP 等
廣告