Python - Serveurs Web

Python est suffisamment polyvalent pour créer de nombreux types d'applications et de programmes qui pilotent Internet ou d'autres réseaux informatiques. Un aspect important d'Internet réside dans les serveurs Web qui sont à la racine du modèle client-serveur. Dans ce chapitre, nous verrons quelques serveurs Web créés en langage python pur.

Gunicorn

Gunicorn est un serveur Web autonome doté d'un processus maître central chargé de gérer les processus de travail lancés de différents types. Ces processus de travail traitent et traitent ensuite les demandes directement. Et tout cela peut être configuré et adapté pour répondre aux divers besoins des scénarios de production.

Caractéristiques importantes

  • Il prend en charge WSGI et peut être utilisé avec n'importe quelle application et framework Python WSGI exécutant
  • Il peut également être utilisé en remplacement de Paster (ex: Pyramid), le serveur de développement de Django, web2py, etc.
  • Offre le choix de divers types / configurations de travailleurs et une gestion automatique des processus de travail
  • Prise en charge de HTTP / 1.0 et HTTP / 1.1 (Keep-Alive) via des nœuds de calcul synchrones et asynchrones
  • Livré avec le support SSL
  • Extensible avec crochets

Serveur CherryPy WSGI

CherryPy est un framework Web autonome car il peut fonctionner seul sans avoir besoin de logiciel supplémentaire. Il possède son propre serveur Web compatible WSGI, HTTP / 1.1. Comme il s'agit d'un serveur WSGI, il peut également être utilisé pour servir n'importe quelle autre application WSGI Python, sans être lié au cadre de développement d'applications de CherryPy.

Caractéristiques importantes

  • Il peut exécuter toutes les applications Web Python exécutées sur WSGI.
  • Il peut gérer les fichiers statiques et il peut simplement être utilisé pour servir des fichiers et des dossiers seuls.
  • Il est en pool de threads.
  • Il prend en charge SSL.
  • C'est une alternative pure-Python facile à adapter, facile à utiliser, robuste et fiable.

Web tordu

Il s'agit d'un serveur Web fourni avec la bibliothèque réseau Twisted. Alors que Twisted lui-même est "un moteur de mise en réseau événementiel", le serveur Web Twisted fonctionne sur WSGI et est capable d'alimenter d'autres applications Web Python.

Caractéristiques importantes

  • Il exécute les applications WSGI Python
  • Il peut agir comme un framework de serveur Web Python, vous permettant de le programmer avec le langage à des fins de service HTTP personnalisé
  • Il offre une capacité de prototypage simple et rapide via des scripts Python (.rpy) qui sont exécutés sur des requêtes HTTP
  • Il est livré avec des capacités de proxy et de proxy inverse
  • Il prend en charge les hôtes virtuels
  • • Il peut même servir Perl, PHP et cetera