SCGI est une langue neutre moyens de connexion d'un serveur web frontal et une application web. WSGI est un Python spécifique à la norme d'interface pour les applications web.
S'ils ont des racines dans CGI, ils sont plutôt différents dans le champ d'application et en effet, vous pourriez tout à fait raisonnable d'utiliser les deux à la fois, par exemple avoir un mod_scgi sur le serveur de parler à un WSGI application de fonctionner comme un SCGI serveur. Il existe plusieurs implémentations de la bibliothèque qui sera exécuté WSGI applications comme SCGI serveurs pour vous (par exemple. wsgitools, cherrypy).
Ils sont à la fois "fiable", en autant que vous pouvez envisager une spécification fiable, par opposition à une mise en oeuvre particulière. Ces jours, vous serait probablement écrire votre application en tant que WSGI appelable, et d'examiner la question du déploiement séparément.
Peut-être un Apache+mod_wsgi (embedded) interface peut être un peu plus vite qu'un Apache+mod_scgi+(SCGI wrapper lib), mais selon toute vraisemblance, il ne va pas être très différents. Plus utile est la possibilité d'exécuter l'application sur une variété de serveurs, les plates-formes de connexion et de normes.
SCGI (comme FastCGI) est un (sérialisés) protocole adapté pour les inter-processus de communication entre un serveur web et une application web.
WSGI est une API Python, la connexion de deux (ou plus) de Python WSGI compatible avec les modules à l'intérieur du même processus (interpréteur Python). Un module représente le serveur web (qui peut être soit un Python en cours de processus serveur web de mise en œuvre ou de passerelle vers un serveur web dans un autre processus, par exemple, SCGI). L'autre module est ou représente l'application web. En outre, zéro, un ou plusieurs modules entre ces deux modules, peut servir comme WSGI "middleware" modules, en faisant des choses comme la session/gestion des cookies, la mise en cache du contenu, de l'authentification, etc. Le WSGI API utilise le langage Python fonctionnalités comme l'itération/générateurs et la transmission de la appelable des objets entre les coopérants WSGI-compatible modules.
Ils sont à la fois les spécifications pour le branchement d'une application web dans un serveur web. Une flagrante différence est que WSGI vient du Python monde, et je crois qu'il n'y a pas non implémentations de python.
Les spécifications sont généralement pas comparables fondée sur une meilleure/plus rapide/fiable.
Seulement leurs implémentations sont comparables, et je suis sûr que vous trouverez de bonnes implémentations de ces deux spécifications.
SCGI est une langue neutre moyens de connexion d'un serveur web frontal et une application web. WSGI est un Python spécifique à la norme d'interface pour les applications web.
S'ils ont des racines dans CGI, ils sont plutôt différents dans le champ d'application et en effet, vous pourriez tout à fait raisonnable d'utiliser les deux à la fois, par exemple avoir un mod_scgi sur le serveur de parler à un WSGI application de fonctionner comme un SCGI serveur. Il existe plusieurs implémentations de la bibliothèque qui sera exécuté WSGI applications comme SCGI serveurs pour vous (par exemple. wsgitools, cherrypy).
Ils sont à la fois "fiable", en autant que vous pouvez envisager une spécification fiable, par opposition à une mise en oeuvre particulière. Ces jours, vous serait probablement écrire votre application en tant que WSGI appelable, et d'examiner la question du déploiement séparément.
Peut-être un Apache+mod_wsgi (embedded) interface peut être un peu plus vite qu'un Apache+mod_scgi+(SCGI wrapper lib), mais selon toute vraisemblance, il ne va pas être très différents. Plus utile est la possibilité d'exécuter l'application sur une variété de serveurs, les plates-formes de connexion et de normes.
OriginalL'auteur bobince
SCGI (comme FastCGI) est un (sérialisés) protocole adapté pour les inter-processus de communication entre un serveur web et une application web.
WSGI est une API Python, la connexion de deux (ou plus) de Python WSGI compatible avec les modules à l'intérieur du même processus (interpréteur Python). Un module représente le serveur web (qui peut être soit un Python en cours de processus serveur web de mise en œuvre ou de passerelle vers un serveur web dans un autre processus, par exemple, SCGI). L'autre module est ou représente l'application web. En outre, zéro, un ou plusieurs modules entre ces deux modules, peut servir comme WSGI "middleware" modules, en faisant des choses comme la session/gestion des cookies, la mise en cache du contenu, de l'authentification, etc. Le WSGI API utilise le langage Python fonctionnalités comme l'itération/générateurs et la transmission de la appelable des objets entre les coopérants WSGI-compatible modules.
OriginalL'auteur
Ils sont à la fois les spécifications pour le branchement d'une application web dans un serveur web. Une flagrante différence est que WSGI vient du Python monde, et je crois qu'il n'y a pas non implémentations de python.
Les spécifications sont généralement pas comparables fondée sur une meilleure/plus rapide/fiable.
Seulement leurs implémentations sont comparables, et je suis sûr que vous trouverez de bonnes implémentations de ces deux spécifications.
Peut-être lire et lire.
OriginalL'auteur Ali Afshar