Diréktori Tulisan
CPU server HestiaCP naék? Pituduh lengkep pikeun optimasi prosés PHP-FPM!

Naha CPU server anjeun terus-terusan dina 100%? Naha kipasna muter-muter kawas nu teu puguh? Naha halaman wéb anjeun laun pisan dimuatna? Panyababna meureun php-fpm!
Abdi nembe mendakan chenweiliang.com kolam renang PHP ieu php-fpm Prosésna ngahakan CPU sapertos gélo, sareng server nabrak!
Dina raraga nyegerkeun server, Kuring diusahakeun runtuyan métode optimasi sarta tungtungna junun ngurangan pamakean CPU.
Ayeuna, hayu urang bagikeun pituduh optimasi anu efisien ieu ! 🚀
1. Ngawatesan jumlah prosés php-fpm
Setélan standar pikeun php-fpm tiasa nyiptakeun jumlah prosés anu teu terbatas , anu nyababkeun beban CPU server.
Pikeun ngaoptimalkeun éta, urang tiasa ngarobih parameter manajemén prosés.
Hurungkeun php-fpm File Konfigurasi:
sudo nano /etc/php/*/fpm/pool.d/www.conf
- *Robah kana versi PHP anjeun, sapertos PHP8.3, sareng robih janten kieu:
/etc/php/8.3/fpm/pool.d/www.conf
Patarosan versi PHP diatur ku HestiaCP
v-list-web-domain user domain.com
É.g:
v-list-web-domain abc chenweiliang.com
Dina output, anjeun bakal nempo hiji hal kawas:
PHP SUPPORT yes
PHP MODE php-fpm
PHP VERSION 8.3
Ieu nunjukkeun yén situs wéb ieu nganggo PHP 8.3.
Panggihan tur modifikasi parameter di handap ieu:
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 后自动退出
Lajeng reboot php-fpm Pikeun nyieun éféktif:
sudo systemctl restart php-fpm
✅Efek : Ngawatesan jumlah prosés pikeun nyegah php-fpm ngonsumsi sumber daya CPU sacara kaleuleuwihi.
2. Aktipkeun OPCache (pikeun ningkatkeun kinerja PHP)
PHP reparses kode unggal waktos eta dieksekusi, nu mangrupakeun runtah sumberdaya.
Solusina? Aktipkeun OPCache sareng cache kode PHP anjeun!
编辑 php.ini dokumén:
sudo nano /etc/php/*/fpm/php.ini
Tambihkeun atanapi modifikasi ieu:
opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.validate_timestamps=0 # 禁用实时检测,提高性能
Saatos nyimpen, balikan deui prosés PHP:
sudo systemctl restart php8.3-fpm
✅Efek : Ngurangan parsing kode PHP anu diulang-ulang, ngirangan beban CPU, sareng ningkatkeun efisiensi palaksanaan.
3. Ngawatesan waktos palaksanaan maksimum Aksara PHP
Lamun naskah PHP dijalankeun pikeun lila teuing, sumberdaya CPU bakal terus nempatan.
Nyetél période seep anu lumayan tiasa nyegah prosés "nekad" tina ngeusian server kanggo waktos anu lami.
Hurungkeun php.ini dokumén:
sudo nano /etc/php/*/fpm/php.ini
Robah parameter di handap ieu:
max_execution_time = 30 # PHP 脚本最多执行 30 秒
max_input_time = 30 # 处理输入数据最多 30 秒
memory_limit = 256M # 限制单个 PHP 进程的内存占用
Teras balikan deui prosés PHP:
sudo systemctl restart php-fpm
✅Efek : Nyegah prosés PHP tina jalan dina jangka waktu anu lami, ngirangan runtah sumber daya CPU.
4. Cék MySQL Patarosan lalaunan
PHP-FPM ngagaduhan beban anu luhur,Éta tiasa disababkeun ku pamundut SQL anu laun!
Hurungkeun MySQL Log pamundut lalaunan, manggihan pernyataan SQL nu nahan deui.
Édit file konfigurasi MySQL:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Tambihkeun kana:
slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow.log
long_query_time = 1 # 超过 1 秒的查询会被记录
Saatos nyimpen, balikan deui MySQL:
sudo systemctl restart mysql
Lajeng nganggo mysqldumpslow Nganalisis patarosan lambat:
mysqldumpslow -s c -t 10 /var/log/mysql-slow.log
✅Hasil : Nangtukeun query SQL anu nyéépkeun waktos, ngaoptimalkeun kinerja database, sareng sacara teu langsung ngirangan beban PHP.
5. Larangan Bercut Panggunaan sumber daya
Ningali daptar prosés, kuring mendakan Pamakéan CPU prosés Memcached nyaéta 24.8%!
Bisa jadi alokasi cache badag teuing, ngabalukarkeun CPU pikeun ngolah jumlah badag data.
Pangaluyuan memcached Konfigurasi:
sudo nano /etc/memcached.conf
Revisi:
-m 32 # 限制 Memcached 内存使用 32MB
Lajeng reboot:
sudo systemctl restart memcached
✅Efek : Ngurangan beban CPU dina prosés Memcached sareng ningkatkeun efisiensi caching.
6. Aktipkeun Nginx ka cache sumberdaya statik
Sababaraha kali, PHP prosés requests nu ngandung angka nu gede ngarupakeun CSS, JS, gambar, tapi file ieu henteu peryogi parsing PHP pisan!
Solusina? Anggo Nginx pikeun nyimpen sumber statik!
Édit konfigurasi Nginx:
sudo nano /etc/nginx/nginx.conf
Tambihkeun kana:
location ~* \.(jpg|jpeg|png|gif|css|js|ico|xml)$ {
expires max;
log_not_found off;
}
Saatos nyimpen, balikan deui Nginx:
sudo systemctl restart nginx
✅Hasilna : Ngurangan sabaraha kali PHP ngolah file statis, sahingga nurunkeun panggunaan CPU.
7. Manggihan Aksara PHP anu ngagunakeun paling CPU
Lamun CPU masih teuing tinggi sanggeus optimasi, bisa jadi éta sababaraha Aksara PHP ngajalankeun wildly.
Anggo paréntah di handap ieu pikeun milari prosés PHP kalayan pamakean CPU pangluhurna:
ps -eo pid,user,pcpu,pmem,args --sort=-pcpu | grep php
Upami anjeun mendakan yén skrip PHP nyandak seueur teuing CPU, anjeun tiasa maéhan éta langsung:
kill -9 PID
✅Hasilna : Ngaidentipikasi "apel goréng" sacara akurat sareng nyegah prosés PHP ngeusian CPU salami waktos anu lami.
Ringkesan: 7 cara pikeun ngaoptimalkeun PHP-FPM
✅ Ngawatesan jumlah prosés PHP-FPM, pikeun nyegah overload CPU
✅ Aktipkeun OPCache, ngurangan parsing ulang kode PHP
✅ Nyetél PHP timeout, pikeun nyegah operasi jangka panjang
✅ Mariksa query lambat MySQL, ngaoptimalkeun kinerja query database
✅ Saluyukeun Mémori Memcached, ngurangan beban CPU
✅ Aktipkeun cache statik Nginx, ngurangan beban parsing PHP
✅ Manggihan skrip PHP pamakéan CPU tinggi, optimasi tepat
kasimpulanana
Optimasi server sapertos kabugaran, anjeun kedah ngadamel panyesuaian anu tepat sareng henteu ngaganggu!
Saatos runtuyan optimizations, beban CPU server kuring geus turun tina 80% dugi ka 15%, ramatloka muka dua kali gancang!
Upami server anjeun ngagaduhan masalah anu sami, cobian metode ieu! 💪
👉Lakukeun tindakan ayeuna! Optimalkeun PHP-FPM anjeun sareng simpen server anjeun! 🚀
Mudah-mudahan, tulisan "Prosés php-fpm HestiaCP ngonsumsi seueur sumber daya CPU, kumaha carana ngaoptimalkeunana?" anu dibagikeun dina blog Chen Weiliang ( https://www.chenweiliang.com/ ) bakal aya mangpaatna pikeun anjeun.
Mangga bagikeun tautan artikel ieu: https://www.chenweiliang.com/cwl-32490.html
