Qu'est-ce qu'un FastCGI?

FastCGI est une extension de Common Gateway Interface (CGI) développée par Open Market, une société aujourd'hui disparue. FastCGI est disponible gratuitement en tant que norme ouverte. Il corrige certaines lacunes de CGI qui limitent les performances.

Contrairement à CGI, FastCGI ne crée pas de nouveau processus pour chaque demande, ce qui minimise les coûts liés à la création et à la destruction du processus à chaque réception d'une demande. Cette surcharge peut être contournée à l'aide d'interfaces de programme d'application (API) telles que l'interface NSAPI (Netscape Server Application Interface) ou ISAPI (Internet Server Application Programming Interface), mais étant donné qu'elles sont propriétaires, il existe une courbe d'apprentissage supplémentaire et des limitations dans les langages pris en charge. à prendre en considération. Un autre inconvénient de CGI est le fait que certains cas de réutilisation ne peuvent pas être obtenus, tels que des connexions à des bases de données ou des techniques de mise en cache. Le traitement des demandes peut être jusqu'à 30 fois plus rapide avec FastCGI qu'avec un CGI conventionnel.

Avec FastCGI, plusieurs demandes peuvent être traitées sur une seule connexion, appelée multiplexage. Alternativement, plusieurs connexions peuvent être utilisées. Les demandes sont transmises en utilisant le protocole FTP (File Transfer Protocol) ou des sockets. La même connexion est ensuite utilisée pour renvoyer la réponse.

Bien que la connexion puisse être fermée à ce stade, le serveur Web et le processus persistent. Cela offre de nombreux avantages. Par exemple, cela signifie que le processus du serveur et de l'application peut être arrêté ou redémarré séparément.

FastCGI a été développé à l'origine par Open Market et mis en œuvre dans son offre de serveur Web. Cependant, l'interface peut être implémentée sur n'importe quel serveur et a été mise en place rapidement sur plusieurs autres serveurs Web du secteur. FastCGI étant hautement compatible avec l'informatique distribuée, une application FastCGI peut être exécutée sur un serveur distinct du serveur Web. Cela offre tous les avantages d'améliorer la disponibilité des systèmes, d'améliorer l'évolutivité et de renforcer la sécurité des systèmes grâce à l'isolation des composants. En utilisant FastCGI distant, l'administration est réduite car le réseau interne peut gérer l'exécution des applications.

FastCGI peut, tout comme une application CGI, générer une réponse à partir d'une requête HTTP (Hypertext Transfer Protocol). Il gère également des tâches telles que la vérification de l'authentification et la conversion des types de données. Ces tâches sont gérées à l'aide de rôles, qui peuvent être ajoutés et étendus librement.

FastCGI est simple à comprendre et fonctionnera avec presque tous les langages de programmation. Les processus étant isolés, les serveurs ne peuvent pas être bloqués par des problèmes spécifiques à une application. Toute application créée avec la structure FastCGI est rétroactive avec les anciens serveurs exécutant CGI. En outre, la bibliothèque d'applications est conçue pour simplifier la migration des applications CGI.

DANS D'AUTRES LANGUES

Cet article vous a‑t‑il été utile ? Merci pour les commentaires Merci pour les commentaires

Comment pouvons nous aider? Comment pouvons nous aider?