Lassen Sie uns zunächst über CGI sprechen.
cgi ist ein Protokoll und hat nichts mit dem Prozess zu tun. Dabei erhält der Webserver (nginx) eine PHP-Netzwerkanfrage Zu diesem Zeitpunkt muss Nginx anhand der Konfigurationsdatei einen PHP-Parser finden und nach einer einfachen Verarbeitung einige der angeforderten Informationen an den PHP-Parser übergeben. Zu diesem Zeitpunkt wird festgelegt, welche Protokolle in welchem Format übertragen werden sollen . Dieser Standard wird als CGI-Protokoll bezeichnet
Der PHP-Interpreter ist ein CGI-Programm, das dieses Protokoll implementiert. Nachdem Nginx diese Inhalte an den PHP-Interpreter übergeben hat, liest es die Initialisierungsumgebung wie php.ini und verarbeitet die Daten. und wandelt ihn schließlich in einen Datenstrom um, der diesem Protokoll entspricht, sendet ihn an Nginx und kehrt schließlich zurück. Für Browser [Empfohlen: PHP-Video-Tutorial]
Fast-CGI-Management-CGI-Programm
Fast -cgi ist ein residentes Prozessprogramm, das sich von cgi unterscheidet und für jede Webanforderung einen Prozess erstellt. Darüber hinaus startet fast-cgi beim Start des Webservers mehrere CGI-Programme gleichzeitig, sodass bei einer dynamischen Seitenanforderung eingegangen wird Der Vorteil davon ist, dass der Webserver mehr Anfragen verarbeiten und php.ini nur einmal analysieren kann. Das Diagramm sieht wie folgt aus
First php-fpm Es ist das Produkt der Integration von Fast-CGI und dem Hinzufügen einiger neuer Funktionen, da das vom Webserver bereitgestellte Fast-CGI-Programm viele Mängel aufweist Wenn bei der Verwaltung von PHP-CGI beispielsweise die Konfigurationsdatei von PHP.INI geändert wird, muss der Webserver neu gestartet werden, damit sie wirksam wird (PHP-CGI kann nicht reibungslos gestartet werden und PHP kann beim Beenden von PHP-CGI nicht normal funktionieren). .Diese Probleme können durch die Verwendung von PHP-FPM gelöst werden
Das obige ist der detaillierte Inhalt vonDie Beziehung zwischen CGI, Fast-CGI und PHP-FPM (mit Flussdiagramm). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!