Heim > Artikel > Backend-Entwicklung > So erreichen Sie eine Leistungsoptimierung mit PHP-FPM
Dieser Artikel stellt Ihnen die Konfigurationsmethoden und Vorsichtsmaßnahmen zur Leistungsoptimierung durch PHP-FPM vor. Freunde in Not können sich auf die
Einführung beziehen:
PHP-FPM ist ein PHP-FastCGI-Manager Wenn PHP-Programme auf Nginx ausgeführt werden, werden die PHP-Programme im Allgemeinen zum Parsen an PHP-FPM weitergeleitet. Okay, das ist es!
PHP 5.4 hat mit der Integration von PHP-FPM begonnen, was bedeutet, dass beim Kompilieren von PHP einfach --enable-fpm PHP-FPM installiert.
1. PHP-FPM installieren
rrree## Sehen Sie die oben genannten Parameter? --enable -fpm Ja , dies dient dazu, die PHP-FPM-Erweiterung zu aktivieren.
shell > ./configure --prefix=/usr/local/php \ --with-config-file-path=/usr/local/php --with-mysql=/usr/local/mysql/ \ --with-mysqli=/usr/local/mysql/bin/mysql_config --with-gd --with-xsl --with-bz2 \ --with-zlib --with-curl --with-pear --without-iconv --with-mcrypt \ --with-gettext --with-openssl --with-libxml-dir --with-png-dir --with-jpeg-dir --with-freetype-dir \ --with-libdir=lib64 --enable-ftp --enable-fpm --enable-opcache --enable-exif --enable-soap --enable-bcmath --enable-calendar \ --enable-sockets --enable-mbstring --enable-gd-native-ttf --disable-rpath --disable-debug
2. PHP-FPM konfigurieren
shell > make; make install
3. PHP-FPM überwachen
shell > cp /usr/local/src/php-5.6.17/php.ini-production /usr/local/php/php.ini # 这是 PHP 的配置文件 shell > cp /usr/local/src/php-5.6.17/sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm # 这是 PHP-FPM 的启动脚本 shell > cd /usr/local/php/etc/ shell > cp php-fpm.conf.default php-fpm.conf # 复制一份配置文件 shell > vim php-fpm.conf [global] pid = run/php-fpm.pid # PID rlimit_files = 65535 # 打开文件数限制 [www] # 进程池 user = nginx # 以 nginx 身份运行 group = nginx listen = 127.0.0.1:9000 # 监听本机的 9000 端口 ;listen = /dev/shm/php-cgi.sock; # 监听 UNIX SOCKET ,并把 SOCKET 放在了内存空间中,速度更快 ( Nginx 也要相应修改 )! ;listen.backlog = 10240 # UNIX SOCKET 的方式高并发下有点不稳定,该参数用来缓解 ( SOCKET 等待队列长度 ) ;listen.owner = nginx # UNIX SOCKET 的权限 ;listen.group = nginx ;listen.mode = 0660 pm = dynamic # 创建进程的方式,动态创建 pm.max_children = 32 # 最大进程数 ( 不能只看内存来创建,要看具体使用率,有时内存足够,进程数大多时,导致 CPU 频繁上下文切换,负载会很高 ) pm.start_servers = 5 # 初始进程数 pm.min_spare_servers = 5 # 最小空闲进程数 pm.max_spare_servers = 10 # 最大空闲进程数 pm.status_path = /php_status # PHP-FPM 状态监控 ( Nginx 要设置访问权限 ) shell > service php-fpm start
# Ich denke, verwenden Für Python-Skripte, die zur Überwachung verwendet werden sollen, ist das ?json-Format das beste!
Zusammenfassung: Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:
phpEine Methode zur Implementierung einer einfachen Wahrscheinlichkeit
php Methoden und einfache Beispiele zur While-Schleifensteuerung
Wie man domänenübergreifende Operationen in PHP implementiert
Das obige ist der detaillierte Inhalt vonSo erreichen Sie eine Leistungsoptimierung mit PHP-FPM. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!