Heim > Backend-Entwicklung > PHP-Tutorial > Was ist SAPI in PHP? Wie erreichen? (Bilder und Text)

Was ist SAPI in PHP? Wie erreichen? (Bilder und Text)

不言
Freigeben: 2023-04-04 08:12:01
Original
6713 Leute haben es durchsucht

Der Inhalt dieses Artikels befasst sich mit der Frage, was SAPI in PHP ist. Wie erreicht man es? (Bilder und Text), es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen.

SAPI, ich habe es speziell überprüft. Es ist die Abkürzung für Server Application Programming Interface, was serverseitige Anwendungsprogrammierschnittstelle bedeutet.

Dies ist die Schnittstelle, die der PHP-Kernel der Außenwelt zum Aufrufen seiner Dienste zur Verfügung stellt. Das heißt, externe Systeme können die von PHP bereitgestellten Dienste zum Kompilieren und Ausführen von Skripten über SAPI aufrufen. Es gibt viele in PHP implementierte SAPIs, Cli und Fpm sind die gebräuchlichsten.

Aus der folgenden Abbildung können Sie deutlich verstehen, wie das externe System PHP-Dienste über SAPI aufruft

Was ist SAPI in PHP? Wie erreichen? (Bilder und Text)

Das Bild stammt aus dem Internet

Im Folgenden geht es hauptsächlich darum, wie unser gemeinsames Cli und Fpm funktionieren.

Cli

Cli (Command Line Interface), die Befehlszeilenschnittstelle, wird verwendet, um PHP-Skripte unter der Befehlszeile auszuführen, genau wie Shell PHP-Skript auszuführen ist der einfachste Weg.

Cli ist ein Einzelprozessmodus, der direkt nach der Verarbeitung der Anforderung geschlossen wird. Der Lebenszyklus umfasst den Start des Moduls, den Start der Anforderung, das Herunterfahren der Anforderung und das Herunterfahren des Moduls. und der Schlüsselverarbeitungsprozess ist wie folgt:

main()-> php_cli_startup()-> do_cli()-> php_module_shutdown()
Nach dem Login kopieren
Fpm

Fpm (FastCGI Process Manager) ist ein Prozessmanager für den PHP-FastCGI-Laufmodus. Wie aus seiner Definition hervorgeht, ist dies die Kernfunktion von Fpm ist Prozessmanagement.

FastCGI ist ein Kommunikationsprotokoll zwischen Webservern (wie Nginx, Apache) und Handlern. Es ist ein Kommunikationsprotokoll auf Anwendungsebene, das HTTP ähnelt.
Hinweis: Es handelt sich lediglich um ein Protokoll!

Fpm ist ein Multiprozessmodell, das aus einem Masterprozess und mehreren Workerprozessen besteht. Der Master-Prozess erstellt beim Start einen Socket, empfängt oder verarbeitet jedoch keine Anfragen. Stattdessen wird der untergeordnete Worker-Prozess den Empfang und die Verarbeitung von Anfragen abschließen. Das heißt, der Masterprozess verwaltet den Arbeitsprozess, und der Arbeitsprozess ist die eigentliche Verarbeitungsanforderung.

Fpm führt nach dem Start zunächst den SAPI-Registrierungsvorgang durch und tritt dann in die module startup-Phase des PHP-Lebenszyklus ein, in der die von jeder Erweiterung definierten MINT-Hook-Funktionen aufgerufen werden. Anschließend wird eine Reihe von Initialisierungsvorgängen durchgeführt, und schließlich treten der Master- und der Worker-Prozess in unterschiedliche Verarbeitungsverknüpfungen ein.

Der Lebenszyklus des Worder-Prozesses ist wie folgt:

Was ist SAPI in PHP? Wie erreichen? (Bilder und Text)

Das Bild kommt aus dem Internet

Die wichtigsten Erfahrungen im Lebenszyklus sind diese Phasen: Warten auf Anfragen, Analysieren von Anfragen, Initialisieren von Anfragen, Ausführen von PHP-Skripten und Schließen von Anfragen.

Der Masterprozess verwaltet den Worder-Prozess hauptsächlich auf drei verschiedene Arten, nämlich im statischen Modus (statisch), im dynamischen Modus (dynamisch) und im On-Demand-Modus (ondemand). Der zu verwendende spezifische Modus kann über pm in der conf-Konfiguration

angegeben werden

Das obige ist der detaillierte Inhalt vonWas ist SAPI in PHP? Wie erreichen? (Bilder und Text). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
php
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage