Heim >Backend-Entwicklung >PHP-Tutorial >Was ist PHP-FPM? Einführung in die Verwaltung und Konfiguration von PHP-FPM

Was ist PHP-FPM? Einführung in die Verwaltung und Konfiguration von PHP-FPM

不言
不言nach vorne
2019-02-18 13:18:082982Durchsuche

Der Inhalt dieses Artikels befasst sich mit der Frage: Was ist PHP-FPM? Die Einführung in die PHP-FPM-Verwaltung und -Konfiguration hat einen gewissen Referenzwert. Ich hoffe, dass sie für Sie hilfreich ist.

Was ist PHP-FPM?

PHP-FPM ist der Prozessmanager für FastCGI.

Funktionen von PHP-FPM

  • Erweiterte Prozessverwaltungsfunktionen, die reibungsloses Stoppen und Starten unterstützen

  • Dynamische und statische untergeordnete Prozesse Generieren Sie ein

  • langsames Protokoll, um die ungewöhnliche Langsamkeit aufzuzeichnen, die durch die Ausführung des Skripts verursacht wird.

  • kann verschiedene Ports abhören und unterschiedliche php.ini verwenden

Verwaltung und Konfiguration von PHP-FPM

PHP-FPM-Verwaltung

Der Master-Master-Prozess versteht die folgenden Signale:

  • INT, TERM Sofort beenden

  • QUIT Reibungslos beenden

  • USR1 Protokolldatei erneut öffnen

  • USR2 lädt alle Arbeitsprozesse reibungslos neu und lädt Konfigurations- und Binärmodule neu.

# 查看 php-fpm 用户
ps aux | grep php-fpm

# 查看 php-fpm 进程 pid
ps -ef | grep php-fpm

# 启动 php-fpm
php-fpm -D

# 关闭 php-fpm
kill -INT [pid]

# 重启 php-fpm
kill -USR2 [pid]

ps ist ein Schnappschuss, der den aktuellen Prozess zeigt.

PHP-FPM-Konfiguration

/etc/php-fpm.d Der Ordner enthält die Konfiguration aller Prozesspools, die sich in der Hauptkonfigurationsdatei befindet /etc Es gibt die folgende Zeile in /php-fpm.conf:

include=/etc/php-fpm.d/*.conf

Die Hauptkonfigurationsdatei von php-fpm.conf enthält die globale Konfiguration und die Unterkonfiguration ist die Konfiguration verschiedener Prozesse Pools wie www.

Globale Konfiguration
# s 秒,m 分,h 小时,d 天

# 子进程在 emergency_restart_interval 设定的时间内收到该参数设定次数的 SIGSEGV 或者 SIGBUS退出信息号,则FPM会重新启动
emergency_restart_threshold 10
# 平滑重启的间隔时间:
emergency_restart_interval 1m
# 子进程接受主进程复用信号的超时时间
process_control_timeout 10s
Prozesspoolkonfiguration
# 接收 FastCGI 请求的地址
listen: 'ip:port', '/path/to/unix/socket'

# 设置进程管理器如何管理子进程
pm: static 固定数量, ondemand 进程在有需求时才产生, dynamic 动态设置
statische und dynamische Konfiguration

Für Anwendungen mit relativ kleinem Speicher und geringer Parallelität können Sie die Verwendung von dynamisch in Betracht ziehen Methode, die den gesamten von PHP-FPM verbrauchten Speicher steuern kann.

Wenn die Parallelität hoch ist oder der Datenverkehr stark schwankt, kann die Verwendung von statisch eine schnellere Reaktion erzielen als dynamisch bei hoher Parallelität.

Anzahl der konfigurierbaren Prozesse = konfigurierbarer PHP-FPM-Speicher / (Speicherbedarf des untergeordneten PHP-FPM-Prozesses * 1.2)

Das obige ist der detaillierte Inhalt vonWas ist PHP-FPM? Einführung in die Verwaltung und Konfiguration von PHP-FPM. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen