Outils d'utilisateurs

Outils du Site


fondamentaux:fastcgi

Fast Common Gateway Interface

Histoire

Fast Common Gateway Interface (FastCGI) est une API développée par l'OpenMarket pour corriger les problèmes d'évolutivité et de montée de charge de CGI. Son développement a été initié pour faire face à la NSAPI (Netscape Server Application Programming Interface) propriétaire de Netscape, fonctionnant en tant que module des serveurs HTTP.

Principe

FastCGI fonctionne de la même manière que CGI, à un point prêt : le serveur HTTP, lorsqu'il reçoit une requête liée à un programme exécutable via CGI, va demander l'exécution/l'interprétation du programme par un serveur FastCGI. Ce serveur va ensuite renvoyer la réponse au serveur HTTP, qui la transmettra au client.

Conception

Contrairement à CGI, qui fonctionne en “un programme engendre un processus”, FastCGI fonctionne en mode serveur avec une “pool” (nombre fini) de processus dédiés à l'interprétation d'un langage. Le serveur répartit donc les demandes d'interprétation parmi sa “pool” de processus.

Ainsi, un serveur FastCGI ne peut interpréter qu'un unique langage. Il est cependant tout à fait possible de lancer plusieurs serveurs FastCGI sur un même serveur, chacun étant dédié à un langage spécifique.

Le gain de performances donné par FastCGI par rapport à CGI s'explique par la disparition de la création de contexte à chaque lancement d'un programme : il n'est plus nécessaire de lancer un processus à chaque exécution, le contexte d'exécution est persistant tout au long de l'exécution du serveur FastCGI.

fondamentaux/fastcgi.txt · Dernière modification: 2012/02/21 22:49 (modification externe)