Maison > Article > développement back-end > La relation entre cgi, fast-cgi et php-fpm (avec organigramme)
Tout d'abord, parlons de CGI
cgi est un protocole et n'a rien à voir avec le processus. Par exemple, le serveur Web (nginx) reçoit une requête réseau php. À ce moment-là, nginx doit suivre le fichier de configuration. Trouvez un analyseur PHP et, après un simple traitement, transmettez certaines des informations demandées à l'analyseur PHP. À ce stade, il stipule quels protocoles doivent être transmis et dans quel format. . Cette norme est appelée protocole CGI
L'interpréteur php est un programme cgi qui implémente ce protocole. Une fois que nginx a transmis ces contenus à l'interpréteur php, il lit l'environnement d'initialisation tel que php.ini, puis traite les données, et enfin le convertit en un flux de données conforme à ce protocole et l'envoie à nginx, et enfin le renvoie Pour les navigateurs [Recommandé : Tutoriel vidéo PHP]
programme cgi de gestion fast-cgi
fast -cgi est un programme de processus résident, différent de cgi qui crée un processus pour chaque requête Web. De plus, fast-cgi démarrera plusieurs programmes cgi en même temps au démarrage du serveur Web, de sorte que lorsqu'une requête de page dynamique arrive dans, le flux de données peut être transmis au gestionnaire de processus fast-cgi. L'avantage est que le serveur Web peut gérer plus de requêtes et analyser php.ini une seule fois pour améliorer la vitesse de réponse.
Premier php-fpm C'est le produit de l'intégration de fast-cgi et de l'ajout de nouvelles fonctions puisque le programme fast-cgi fourni par le serveur Web présente de nombreuses lacunes. lors de la gestion de php-cgi, par exemple, si le fichier de configuration de php.ini est modifié, le serveur web doit être redémarré pour que cela prenne effet (php-cgi ne peut pas démarrer correctement, et php ne peut pas fonctionner normalement lors de la suppression de php-cgi). . Ces problèmes peuvent être résolus en utilisant php-fpm
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!