Python - serwery WWW

Python jest na tyle wszechstronny, że umożliwia tworzenie wielu typów aplikacji i programów obsługujących Internet lub inne sieci komputerowe. Jednym z ważnych aspektów Internetu są serwery WWW, które są podstawą modelu serwera klienta. W tym rozdziale zobaczymy kilka serwerów WWW, które zostały stworzone w czystym języku Python.

Gunicorn

Gunicorn to samodzielny serwer WWW z centralnym procesem nadrzędnym, którego zadaniem jest zarządzanie zainicjowanymi procesami roboczymi różnych typów. Te procesy robocze obsługują następnie bezpośrednio żądania i zajmują się nimi. A wszystko to można skonfigurować i dostosować do różnorodnych potrzeb scenariuszy produkcyjnych.

Ważne funkcje

  • Obsługuje WSGI i może być używany z dowolną aplikacją i strukturą WSGI z uruchomioną aplikacją Python
  • Może być również używany jako zamiennik Paster (np. Pyramid), Django's Development Server, web2py, itp.
  • Oferuje wybór różnych typów / konfiguracji pracowników i automatyczne zarządzanie procesami roboczymi
  • Obsługa protokołów HTTP / 1.0 i HTTP / 1.1 (Keep-Alive) przez pracowników synchronicznych i asynchronicznych
  • Pochodzi z obsługą SSL
  • Rozsuwany z haczykami

Serwer CherryPy WSGI

CherryPy to samodzielna platforma internetowa, która może działać samodzielnie bez potrzeby dodatkowego oprogramowania. Posiada własny serwer WWW zgodny ze standardem WSGI i HTTP / 1.1. Ponieważ jest to serwer WSGI, może być używany do obsługi dowolnej innej aplikacji WSGI Python, bez konieczności wiązania się ze strukturą programistyczną aplikacji CherryPy.

Ważne funkcje

  • Może uruchamiać dowolne aplikacje internetowe w języku Python działające na WSGI.
  • Może obsługiwać pliki statyczne i może służyć tylko do obsługi samych plików i folderów.
  • Jest podzielony na wątki.
  • Pochodzi z obsługą SSL.
  • Jest to łatwa do dostosowania, łatwa w użyciu alternatywa czystego języka Python, która jest solidna i niezawodna.

Twisted Web

Jest to serwer sieciowy dostarczany z biblioteką sieciową Twisted. Podczas gdy sam Twisted jest „silnikiem sieciowym sterowanym zdarzeniami”, serwer Twisted Web działa na WSGI i jest w stanie zasilać inne aplikacje internetowe w języku Python.

Ważne funkcje

  • Uruchamia aplikacje WSGI Python
  • Może działać jak struktura serwera WWW w Pythonie, umożliwiając zaprogramowanie go w języku do niestandardowych celów obsługi HTTP
  • Oferuje proste i szybkie prototypowanie za pomocą skryptów Python (.rpy), które są wykonywane na żądanie HTTP
  • Jest wyposażony w funkcje proxy i reverse-proxy
  • Obsługuje wirtualne hosty
  • • Może nawet obsługiwać Perl, PHP i tak dalej