Wie PHP funktioniert

远方*
Freigeben: 2022-04-12 09:03:57
Original
162 Leute haben es durchsucht

1. Das Funktionsprinzip von PHP

Typische Fragen: Nginx + PHP – Das Funktionsprinzip von FPM
CGI: Einige frühe Webserver können nur einfache statische HTML-Dateien verarbeiten, aber mit der Entwicklung der Technologie werden auch dynamische Sprachen entwickelt erschien (wie PHP, Python). Wenn wir PHP verarbeiten möchten, müssen wir einen PHP-Parser zur Verarbeitung übergeben. Aber wie kommuniziert man nach der Verarbeitung von PHP mit unserem Webserver? Das ist ein Problem. Um das Kommunikationsproblem zwischen verschiedenen Sprachprozessoren und dem Webserver zu lösen, wurde das CGI-Protokoll entwickelt. Solange das Programm gemäß dem CGI-Protokoll geschrieben ist, kann die Kommunikation zwischen dem Sprachparser und dem Webserver realisiert werden. (Beispiel: CGI-Programm von PHP) In diesem Prozess ist CGI eine Protokollbrücke zwischen dem PHP-Parser und dem Webserver.
FastCGI: Obwohl CGI das Problem der Kommunikation zwischen PHP und Webserver löst, ist seine Effizienz sehr gering, da der Webserver jedes Mal, wenn er eine Anfrage empfängt, einen neuen CGI-Prozess öffnet und den Prozess dann beendet, wenn die Anfrage endet Wenn wir dieses Mal 10.000, 100.000 oder 1 Million solcher Anfragen haben, werden wir 100.000 oder 1 Million neue Prozesse eröffnen und sie dann beenden. An sich ist das eine große Verschwendung unserer Ressourcen. Zu diesem Zeitpunkt erschien FastCGI hauptsächlich als verbesserte Version von CGI. Der Prozess wird nicht beendet, sondern bleibt erhalten, sodass der Prozess mehrere Anfragen gleichzeitig verarbeiten kann In diesem Fall ist es nicht erforderlich, einen Prozess jedes Mal neu zu öffnen, was unsere Effizienz erheblich verbessert.
PHP-FPM: (FastCGI Process Manager: FastCGI-Prozessmanager), FPM ist eine Implementierung von FastCGI und bietet Prozessverwaltungsfunktionen. Der Prozess umfasst zwei Prozesse: Master-Prozess und Worker-Prozess. Es gibt nur einen Master-Prozess, der für das Abhören des Ports und den Empfang von Anforderungen vom Webserver verantwortlich ist. Es gibt im Allgemeinen mehrere Worker-Prozesse, und die spezifische Anzahl wird in definiert Die FPM-Konfiguration In jedem Prozess ist ein PHP-Parser eingebettet (d. h. der Worker verarbeitet den PHP-Code, während der Master hauptsächlich auf dem Port lauscht und Anfragen von ihm empfängt). Webserver. Der Master-Listening-Port selbst ist standardmäßig 9000, und der 9000-Port wird über den Reverse-Proxy von Nginx weitergeleitet, sodass wir hier die FPM-bezogene Verarbeitung abschließen können.

2. Beschreiben Sie kurz die Unterschiede zwischen CGI, FastCGI und PHP-FPM.

CGI: Um ein Protokoll im Webserver und dem PHP-Parser zu kontaktieren, fungiert es als Brücke.
FastCGI: Es ist eine verbesserte Version von CGI.
PHP-FPM: FastCGI-Prozessmanager, FastCGI-Prozessmanager.

Das obige ist der detaillierte Inhalt vonWie PHP funktioniert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
1
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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!