Direttorju tal-Artikoli
Żidiet qawwija fis-CPU tas-server HestiaCP ? Gwida kompluta għall-ottimizzazzjoni tal-proċess PHP-FPM!

Is-CPU tas-server tiegħek il-ħin kollu fuq 100%? Il-fannijiet qed iduru b'rata mgħaġġla? Il-websajt tiegħek qed titgħabba bil-mod? Il-ħati jista' jkun php-fpm!
Dan l-aħħar skoprejt chenweiliang.com Dan il-grupp PHP php-fpm Il-proċess kiel is-CPU b'mod mgħaġġel, u s-server iġġarraf!
Sabiex inqajjem is-server, ippruvajt serje ta' metodi ta' ottimizzazzjoni u fl-aħħar irnexxieli nnaqqas l-użu tas-CPU.
Issa, ejja naqsmu din il -gwida effiċjenti għall-ottimizzazzjoni ! 🚀
1. Illimita n-numru ta 'proċessi php-fpm
Is-settings awtomatiċi għal php-fpm jistgħu joħolqu numru illimitat ta' proċessi, u jikkawżaw tagħbija żejda tas-CPU tas-server.
Biex nottimizzawh, nistgħu nimmodifikaw il-parametri tal-ġestjoni tal-proċess.
打开 php-fpm Fajls tal-Konfigurazzjoni:
sudo nano /etc/php/*/fpm/pool.d/www.conf
- *Ibdel għall-verżjoni tal-PHP tiegħek, bħal PHP8.3, u ibiddilha għal din:
/etc/php/8.3/fpm/pool.d/www.conf
Staqsi l-verżjoni tal-PHP stabbilita minn HestiaCP
v-list-web-domain user domain.com
E.g:
v-list-web-domain abc chenweiliang.com
Fl-output, se tara xi ħaġa bħal:
PHP SUPPORT yes
PHP MODE php-fpm
PHP VERSION 8.3
Dan jindika li l-websajt tuża PHP 8.3.
Sib u mmodifika l-parametri li ġejjin:
pm = dynamic
pm.max_children = 16 ; 根据服务器资源调整,建议值:CPU 核心数 × 2
pm.start_servers = 4 ; 初始进程数,建议设为 max_children × 25%
pm.min_spare_servers = 2 ; 最小空闲进程数
pm.max_spare_servers = 7 ; 最大空闲进程数
pm.max_requests = 3000 ; 每个子进程处理完 3000 个请求后自动重启
pm.process_idle_timeout = 10s ; 空闲进程 10s 后自动退出
Imbagħad reboot php-fpm Biex tagħmilha effettiva:
sudo systemctl restart php-fpm
✅Effett : Jillimita n-numru ta' proċessi biex jipprevjeni li php-fpm jikkonsma r-riżorsi tas-CPU b'mod eċċessiv.
2. Ippermetti OPCache (biex ittejjeb il-prestazzjoni tal-PHP)
PHP jeżamina mill-ġdid il-kodiċi kull darba li jiġi esegwit, li huwa ħela ta 'riżorsi.
Is-soluzzjoni? Ippermetti OPCache u cache l-kodiċi PHP tiegħek!
编辑 php.ini 文件 :
sudo nano /etc/php/*/fpm/php.ini
Żid jew immodifika dan li ġej:
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.validate_timestamps=0 # 禁用实时检测,提高性能
Wara li ssalva, ibda mill-ġdid il-proċess PHP:
sudo systemctl restart php8.3-fpm
✅Effett : Inaqqas l-analiżi ripetittiva tal-kodiċi PHP, inaqqas it-tagħbija tas-CPU, u jtejjeb l-effiċjenza tal-eżekuzzjoni.
3. Illimita l-ħin massimu ta 'eżekuzzjoni ta' skripts PHP
Jekk script PHP jaħdem għal żmien twil wisq, ir-riżorsi tas-CPU se jkunu okkupati kontinwament.
L-issettjar ta 'perjodu ta' timeout raġonevoli jista 'jipprevjeni proċessi "stubborn" milli jokkupaw is-server għal żmien twil.
打开 php.ini 文件 :
sudo nano /etc/php/*/fpm/php.ini
Immodifika l-parametri li ġejjin:
max_execution_time = 30 # PHP 脚本最多执行 30 秒
max_input_time = 30 # 处理输入数据最多 30 秒
memory_limit = 256M # 限制单个 PHP 进程的内存占用
Imbagħad erġa ibda l-proċess PHP:
sudo systemctl restart php-fpm
✅Effett : Jipprevjeni l-proċessi tal-PHP milli jaħdmu għal perjodi twal, u b'hekk inaqqas l-iskart tar-riżorsi tas-CPU.
4. Iċċekkja MySQL Mistoqsija bil-mod
PHP-FPM għandu tagħbija għolja,Jista 'jkun ikkawżat mill-mistoqsija SQL bil-mod!
开启 MySQL Log tal-mistoqsija bil-mod, sib id-dikjarazzjonijiet SQL li qed iżommu lura.
Editja l-fajl tal-konfigurazzjoni MySQL:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Żid ma':
slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow.log
long_query_time = 1 # 超过 1 秒的查询会被记录
Wara li ssejvja, ibda mill-ġdid MySQL:
sudo systemctl restart mysql
Imbagħad uża mysqldumpslow Analizza mistoqsijiet bil-mod:
mysqldumpslow -s c -t 10 /var/log/mysql-slow.log
✅Riżultat : Identifika mistoqsijiet SQL li jieħdu ħafna ħin, ottimizza l-prestazzjoni tad-database, u indirettament tnaqqas it-tagħbija tal-PHP.
5. Restrizzjonijiet memcached Użu tar-riżorsi
Meta nħares lejn il-lista tal-proċess, sibt L-użu tas-CPU tal-proċess Memcached huwa 24.8%!
Jista 'jkun li l-allokazzjoni tal-cache hija kbira wisq, u tikkawża li s-CPU jipproċessa ammont kbir ta' dejta.
调整 memcached Konfigurazzjoni:
sudo nano /etc/memcached.conf
Irrevedi:
-m 32 # 限制 Memcached 内存使用 32MB
Imbagħad reboot:
sudo systemctl restart memcached
✅Effett : Inaqqas it-tagħbija tas-CPU fuq il-proċess Memcached u jtejjeb l-effiċjenza tal-caching.
6. Ippermetti lil Nginx biex jaqbad ir-riżorsi statiċi fil-cache
Ħafna drabi, PHP jipproċessa talbiet li fihom numru kbir ta ' CSS, JS, immaġini, iżda dawn il-fajls m'għandhom bżonn parsing PHP xejn!
Is-soluzzjoni? Uża Nginx biex tpoġġi fil-cache riżorsi statiċi!
Editja l-konfigurazzjoni Nginx:
sudo nano /etc/nginx/nginx.conf
Żid ma':
location ~* \.(jpg|jpeg|png|gif|css|js|ico|xml)$ {
expires max;
log_not_found off;
}
Wara li ssejvja, erġa ibda Nginx:
sudo systemctl restart nginx
✅Riżultat : Inaqqas l-għadd ta' drabi li l-PHP jipproċessa fajls statiċi, u b'hekk inaqqas l-użu tas-CPU.
7. Sib l-iskrittura PHP li juża l-aktar CPU
Jekk is-CPU għadu għoli wisq wara l-ottimizzazzjoni, jista 'jkun li xi skripts PHP qed jaħdmu b'mod selvaġġ.
Uża l-kmand li ġej biex issir taf il-proċess PHP bl-ogħla użu tas-CPU:
ps -eo pid,user,pcpu,pmem,args --sort=-pcpu | grep php
Jekk issib li script PHP qed jieħu wisq CPU, tista' toqtolha direttament:
kill -9 PID
✅Riżultat : Jidentifika b'mod preċiż "tuffieħ ħżiena" u jipprevjeni l-proċessi PHP milli jokkupaw is-CPU għal perjodi twal.
Sommarju: 7 modi kif tottimizza PHP-FPM
✅ Illimita n-numru ta 'proċessi PHP-FPM, biex tevita tagħbija żejda tas-CPU
✅ Ippermetti OPCache, tnaqqas l-analiżi ripetuta tal-kodiċi PHP
✅ Twaqqif ta' timeout PHP, biex tevita tħaddim fit-tul
✅ Iċċekkja mistoqsijiet bil-mod MySQL, ottimizza l-prestazzjoni tal-mistoqsija tad-database
✅ Aġġusta Memorja Memcached, tnaqqas il-piż tas-CPU
✅ Ippermetti Nginx cache statiku, tnaqqas il-piż tal-parsing PHP
✅ Sib skripts PHP ta' użu għoli ta' CPU, ottimizzazzjoni preċiża
fil-konklużjoni
L-ottimizzazzjoni tas-server hija bħall-fitness, trid tagħmel aġġustamenti preċiżi u ma tħawwadx!
Wara serje ta 'ottimizzazzjonijiet, it-tagħbija tas-CPU tas-server tiegħi naqset minn 80% sa 15%, il-websajt tiftaħ darbtejn aktar malajr!
Jekk is-server tiegħek għandu problemi simili, ipprova dawn il-metodi! 💪
👉Ħu azzjoni issa! Ottimizza l-PHP-FPM tiegħek u salva s-server tiegħek! 🚀
Nispera li l-artiklu "Il-proċess HestiaCP php-fpm jikkonsma ħafna riżorsi tas-CPU, kif nottimizzah?" maqsum fuq il-blog ta' Chen Weiliang ( https://www.chenweiliang.com/ ) ikun ta' għajnuna għalik.
Ħossok liberu li taqsam il-link ta' dan l-artiklu: https://www.chenweiliang.com/cwl-32490.html
