Was ist PHP-FPM

From PHP-FPM

Jump to: navigation, search

PHP in der Version die auf der offiziellen PHP Website heruntergeladen werden kann, hat diverse bekannte Fehler und Einschränkungen im Umgang mit der FastCGI SAPI. PHP-FPM wurde entwickelt um diese Fehler zu beheben und um ihn mit diversen Funktionen zu erweitern. Die folgende Tabelle soll die Unterschiede grob hervorheben, diese Tabelle erhebt keinen Anspruch auf hundertprozentige Genauigkeit, da natürlich jede Software fortlaufend weiterentwickelt wird.

Beschreibung PHP (> 5.2.x) PHP (5.3.x) spawn-fcgi / spawn-php.sh / daemontools PHP-FPM
PHP „Daemonisierung“: pid file, log file, setsid(), setuid(), setgid(), chroot() X X
Prozess Verwaltung: Möglichkeit die PHP-Workers verlustfrei zu stoppen und zu starten ohne Anfragen zu verlieren; Möglichkeit die Konfigurations- Binärdateien ohne Anfragen zu verlieren zu aktualisieren und zu ändern; X X (teilweise) X
Zugriffsverwaltung der Anfragen die von einem Webserver gestellt werden anhand von IP-Adressen X ✓ (seit 5.2.2) X
Dynamische Anzahl an Prozessen, abhängig von der Belastung X X X X (geplant!)
Starten der Workers mit unterschiedlichen UIDs/GIDs/chroot/Umgebung und php.ini-Optionen, ohne Safe Mode zu benötigen X X X
Logging von stdout und stderr Prozessen X X X
Not-Neustart aller Prozesse im Falle einer Beschädigung des Speichers von PHP-Code Cache Systemen, falls in Verwendung (z. B. eAccelerator, memcached, Xcache) X X X
Erzwingen der Beendigung von Prozessen wenn set_time_limit() fehlschlägt X X X

Siehe auch

Weblinks

Hauptseite | Was ist FastCGI | Was ist PHP-FPM | Funktionsumfang | Download | Dokumentation | FAQ | ChangeLog | Wunschliste | Über den Autor


Englisch | Chinesisch