Isalathiso senqaku
- 1 1. Nciphisa inani leenkqubo zephp-fpm
- 2 2. Yenza i-OPCache (ukuphucula ukusebenza kwe-PHP)
- 3 3. Nciphisa elona xesha liphezulu lokwenziwa kwemibhalo ye-PHP
- 4 4. Jonga iMySQL imibuzo ecothayo
- 5 5. Ukunciphisa ukusetyenziswa kweMemcached
- 6 6. Yenza i-Nginx kwi-cache imithombo ye-static
- 7 7. Fumana iskripthi se-PHP esisebenzisa eyona CPU
- 8 Isishwankathelo: Iindlela ezisi-7 zokwandisa i-PHP-FPM
- 9 ukuququmbela
I-HestiaCP Umncedisi we CPU spike? Isikhokelo esipheleleyo sokuphucula inkqubo ye-PHP-FPM!

Ngaba i-CPU yomncedisi isoloko iku-100%? Ifeni ijikeleza ngamandla? Ngaba isantya sokuvula iwebhusayithi siyehla?Unobangela unokuba yiphp-fpm!
Ndisandul' ukufumanisa chenweiliang.com Le PHP pool php-fpm Inkqubo yadla i-CPU njengokuphambana, kwaye iseva yaphuka!
Ukuze ndivuselele umncedisi, ndizamile uchungechunge lweendlela zokuphucula kwaye ekugqibeleni ndaphumelela ekunciphiseni ukusetyenziswa kwe-CPU.
Ngoku, masabelane ngale nto Isikhokelo esisebenzayo sokuPhucula!🚀
1. Nciphisa inani leenkqubo zephp-fpm
php-fpm useto olungagqibekangamdaInkqubo yenziwe ngokungalawulekiyo, ibangela ukuba i-CPU yomncedisi ilayishe kakhulu.
Ukuyiphucula, sinokuyiguqula inkqubo yolawulo lweeparamitha.
layita php-fpm Iifayile zoqwalaselo:
sudo nano /etc/php/*/fpm/pool.d/www.conf
- *Tshintshela kwinguqulelo yakho ye-PHP, efana ne-PHP8.3, kwaye uyitshintshele kule:
/etc/php/8.3/fpm/pool.d/www.conf
Buza inguqulo ye-PHP esetwe nguHestiaCP
v-list-web-domain user domain.com
Isb:
v-list-web-domain abc chenweiliang.com
Kwimveliso, uya kubona into efana nale:
PHP SUPPORT yes
PHP MODE php-fpm
PHP VERSION 8.3
Oku kuthetha ukuba iwebhusayithi isebenzisa PHP 8.3,
Khangela kwaye ulungise ezi parameters zilandelayo:
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 后自动退出
Emva koko uqalise kwakhona php-fpm Ukwenza isebenze:
sudo systemctl restart php-fpm
✅ Isiphumo: Nciphisa inani leenkqubo zokuthintela i-php-fpm ekusebenziseni kakhulu izixhobo ze-CPU.
2. Yenza i-OPCache (ukuphucula ukusebenza kwe-PHP)
I-PHP ihlaziya ikhowudi rhoqo xa isenziwa, okuyinkcitho yemithombo.
Isicombululo? Yenza i-OPCache kwaye igcine ikhowudi yakho ye-PHP!
编辑 php.ini uxwebhu:
sudo nano /etc/php/*/fpm/php.ini
Yongeza okanye ulungise oku kulandelayo:
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.validate_timestamps=0 # 禁用实时检测,提高性能
Emva kokugcina, qalisa kwakhona inkqubo ye-PHP:
sudo systemctl restart php8.3-fpm
✅ Isiphumo: Nciphisa ukwahlulahlula okuphindaphindiweyo kwekhowudi ye-PHP, ukunciphisa umthwalo we-CPU, kunye nokuphucula ukusebenza kakuhle.
3. Nciphisa elona xesha liphezulu lokwenziwa kwemibhalo ye-PHP
Ukuba iskripthi se-PHP sisebenza ixesha elide, izixhobo ze-CPU ziya kuhlala zihlala.
Ukuseta ixesha elifanelekileyo lokuvala kunokuthintela iinkqubo "ezinenkani" ekubeni zihlale kwiseva ixesha elide.
layita php.ini uxwebhu:
sudo nano /etc/php/*/fpm/php.ini
Lungisa ezi parameters zilandelayo:
max_execution_time = 30 # PHP 脚本最多执行 30 秒
max_input_time = 30 # 处理输入数据最多 30 秒
memory_limit = 256M # 限制单个 PHP 进程的内存占用
Emva koko uqalise kwakhona inkqubo ye-PHP:
sudo systemctl restart php-fpm
✅ Isiphumo: Thintela iinkqubo ze-PHP ekusebenzeni ixesha elide kwaye unciphise inkunkuma yezixhobo ze-CPU.
4. Khangela MySQL Umbuzo ocothayo
I-PHP-FPM inomthwalo ophezulu,Isenokubangelwa ngumbuzo ocothayo weSQL!
Layita MySQL Umbuzo ocothayo, fumana iingxelo zeSQL ezibambezelayo.
Hlela ifayile yoqwalaselo ye-MySQL:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Faka kwi:
slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow.log
long_query_time = 1 # 超过 1 秒的查询会被记录
Emva kokugcina, qalisa kwakhona i-MySQL:
sudo systemctl restart mysql
Emva koko sebenzisa mysqldumpslow Hlalutya imibuzo ecothayo:
mysqldumpslow -s c -t 10 /var/log/mysql-slow.log
✅ Isiphumo: Fumana imibuzo ye-SQL echitha ixesha, ulungise ukusebenza kwesiseko sedatha, kwaye unciphise ngokungathanga ngqo umthwalo we-PHP.
5. Ukunciphisa ukusetyenziswa kweMemcached
Ukujonga kuluhlu lwenkqubo, ndiyifumene Inkqubo ye-Memcached yokusetyenziswa kwe-CPU yi-24.8%!
Kungenzeka ukuba ulwabiwo lwe-cache lukhulu kakhulu, okubangela ukuba i-CPU isebenze isixa esikhulu sedatha.
调整 memcached Ubumbeko:
sudo nano /etc/memcached.conf
Hlaziya:
-m 32 # 限制 Memcached 内存使用 32MB
Emva koko uqalise kwakhona:
sudo systemctl restart memcached
✅ Isiphumo: Nciphisa umthwalo we-CPU wenkqubo yeMemcached kunye nokuphucula ukusebenza kakuhle kwe-cache.
6. Yenza i-Nginx kwi-cache imithombo ye-static
Amaxesha amaninzi, izicelo ze-PHP eziqulathe inani elikhulu le CSS, JS, imifanekiso, kodwa ezi fayile azifuni ukwahlulahlulwa kwe-PHP!
Isicombululo? Sebenzisa i-Nginx ukugcina izixhobo ezingatshintshiyo!
Hlela ubumbeko lweNginx:
sudo nano /etc/nginx/nginx.conf
Faka kwi:
location ~* \.(jpg|jpeg|png|gif|css|js|ico|xml)$ {
expires max;
log_not_found off;
}
Emva kokugcina, qala kabusha iNginx:
sudo systemctl restart nginx
✅ Isiphumo: Nciphisa inani lamaxesha e-PHP isebenza kwiifayile ezimileyo kunye nokunciphisa ukusetyenziswa kwe-CPU.
7. Fumana iskripthi se-PHP esisebenzisa eyona CPU
Ukuba i-CPU isephezulu kakhulu emva kokulungelelaniswa, kusenokwenzeka ukuba ezinye izikripthi ze-PHP ziqhuba kakubi.
Sebenzisa lo myalelo ulandelayo ukufumana inkqubo ye-PHP ngokusetyenziswa okuphezulu kwe-CPU:
ps -eo pid,user,pcpu,pmem,args --sort=-pcpu | grep php
Ukuba ufumanisa ukuba iskripthi se-PHP sithatha i-CPU eninzi kakhulu, ungayibulala ngokuthe ngqo:
kill -9 PID
✅ Isiphumo:Chonga ngokuchanekileyo "iiapile ezimbi" kwaye uthintele inkqubo ye-PHP ekubeni ithathe i-CPU ixesha elide.
Isishwankathelo: Iindlela ezisi-7 zokwandisa i-PHP-FPM
✅ Nciphisa inani leenkqubo ze-PHP-FPM, ukuthintela ukugcwala kwe-CPU
✅ Yenza OPCache, nciphisa ukwahlulahlula okuphindaphindiweyo kwekhowudi ye-PHP
✅ Ukuseta ixesha lokuphela kwe-PHP, ukuthintela ukusebenza kwexesha elide
✅ Ukukhangela imibuzo ecothayo yeMySQL, khulisa ukusebenza kombuzo wesiseko sedata
✅ Lungisa iMemcached Memcached, ukunciphisa umthwalo we-CPU
✅ Yenza i-Nginx cache isebenze, ukunciphisa umthwalo wokwahlulahlula kwe-PHP
✅ Fumana i-CPU ephezulu yokusetyenziswa kwemibhalo ye-PHP, ulungiselelo oluchanekileyo
ukuququmbela
Ukulungiswa kweseva kufana nokomelela, kufuneka wenze uhlengahlengiso oluchanekileyo kwaye ungaphazamisi!
Emva kothotho lokulungisa, umthwalo wam we-CPU yeseva uye wehla 80% phantsi ukuya kwi-15%, iwebhusayithi ivula kabini ngokukhawuleza!
Ukuba umncedisi wakho uneengxaki ezifanayo, zama ezi ndlela! 💪
???? Thatha inyathelo ngoku! Yandisa i-PHP-FPM yakho kwaye ugcine iseva yakho! 🚀
Ndiyathemba Chen Weiliang Blog ( https://www.chenweiliang.com/ ) kwabelwana "Inkqubo ye-HestiaCP php-fpm ithatha izixhobo ezininzi ze-CPU, ungayenza njani? ”, inokuba luncedo kuwe.
Wamkelekile ukwabelana ngekhonkco leli nqaku:https://www.chenweiliang.com/cwl-32490.html
