Tsarin HestiaCP php-fpm yana ɗaukar albarkatun CPU da yawa Ta yaya zan iya inganta shi?

Shin karuwar CPU na uwar garken HestiaCP ? Cikakken jagora ne ga inganta tsarin PHP-FPM!

Tsarin HestiaCP php-fpm yana ɗaukar albarkatun CPU da yawa Ta yaya zan iya inganta shi?

Shin CPU ɗin uwar garkenka yana aiki 100% akai-akai? Shin magoya baya suna juyawa kamar mahaukaci? Shin gidan yanar gizonka yana lodawa a hankali? Babban abin da ya jawo hakan shine php-fpm!

Na gano kwanan nan chenweiliang.com Wannan tafkin PHP php-fpm Tsarin ya cinye CPU kamar mahaukaci, kuma uwar garken ya fadi!

Domin farfado da uwar garken, na gwada jerin hanyoyin ingantawa kuma a ƙarshe na yi nasarar rage yawan amfani da CPU.

Yanzu, bari mu raba wannan jagorar ingantawa mai inganci ! 🚀

1. Ƙayyade yawan matakan php-fpm

Saitunan tsoho don php-fpm na iya ƙirƙirar adadin ayyuka marasa iyaka , wanda ke haifar da yawan CPU na uwar garken.

Don inganta shi, za mu iya canza sigogin gudanarwar tsari.

kunna php-fpm Fayilolin Kanfigareshan:

sudo nano /etc/php/*/fpm/pool.d/www.conf
  • *Canja zuwa nau'in PHP ɗin ku, kamar PHP8.3, kuma canza shi zuwa wannan:/etc/php/8.3/fpm/pool.d/www.conf

Nemi sigar PHP da HestiaCP ya saita

v-list-web-domain user domain.com

Misali:

v-list-web-domain abc chenweiliang.com

A cikin fitarwa, za ku ga wani abu kamar:

PHP SUPPORT      yes
PHP MODE        php-fpm
PHP VERSION     8.3

Wannan yana nuna cewa gidan yanar gizon yana amfani da PHP 8.3.

Nemo kuma gyara sigogi masu zuwa:

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 后自动退出

Sannan sake yi php-fpm Don yin tasiri:

sudo systemctl restart php-fpm

✅Tasiri : Yana iyakance adadin hanyoyin da ake bi domin hana php-fpm cin albarkatun CPU fiye da kima.

2. Kunna OPCache (don inganta aikin PHP)

PHP yana mayar da lambar a duk lokacin da aka kashe shi, wanda shine asarar albarkatu.
Mafita? Kunna OPCache kuma cache lambar PHP ɗinku!

编辑 php.ini takarda:

sudo nano /etc/php/*/fpm/php.ini

Ƙara ko gyara masu biyowa:

opcache.enable=1
opcache.memory_consumption=128
opcache.max_accelerated_files=10000
opcache.validate_timestamps=0  # 禁用实时检测,提高性能

Bayan adanawa, sake farawa tsarin PHP:

sudo systemctl restart php8.3-fpm

✅Tasiri : Yana rage yawan yin nazarin lambar PHP akai-akai, yana rage nauyin CPU, kuma yana inganta ingancin aiwatarwa.

3. Iyakance iyakar lokacin aiwatar da rubutun PHP

Idan rubutun PHP ya yi tsayi da yawa, za a ci gaba da shagaltar da albarkatun CPU.
Saita madaidaicin lokacin ƙarewar lokaci na iya hana matakan "taurin kai" mamaye uwar garken na dogon lokaci.

kunna php.ini takarda:

sudo nano /etc/php/*/fpm/php.ini

Gyara sigogi masu zuwa:

max_execution_time = 30  # PHP 脚本最多执行 30max_input_time = 30  # 处理输入数据最多 30memory_limit = 256M  # 限制单个 PHP 进程的内存占用

Sa'an nan kuma sake kunna tsarin PHP:

sudo systemctl restart php-fpm

✅Tasiri : Yana hana aiwatar da PHP aiki na tsawon lokaci, yana rage ɓatar da albarkatun CPU.

4. Duba MySQL A hankali tambaya

PHP-FPM yana da babban nauyi,Ana iya haifar da jinkirin tambayar SQL!
Kunna MySQL Login tambaya a hankali, Nemo maganganun SQL waɗanda ke riƙe da baya.

Shirya fayil ɗin sanyi na MySQL:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

Ƙari:

slow_query_log = 1
slow_query_log_file = /var/log/mysql-slow.log
long_query_time = 1  # 超过 1 秒的查询会被记录

Bayan adanawa, sake farawa MySQL:

sudo systemctl restart mysql

Sannan amfani mysqldumpslow Yi nazarin tambayoyin a hankali:

mysqldumpslow -s c -t 10 /var/log/mysql-slow.log

✅Sakamako : Gano tambayoyin SQL masu ɗaukar lokaci, inganta aikin bayanai, da kuma rage nauyin PHP a kaikaice.

5. Taƙaitawa Memoci Amfani da albarkatu

Duban jerin tsari, na samo Memcached tsarin amfani da CPU shine 24.8%!
Yana iya zama cewa rabon cache ya yi girma, yana haifar da CPU don aiwatar da adadi mai yawa na bayanai.

Daidaitawa memcached Tsari:

sudo nano /etc/memcached.conf

Bita:

-m 32  # 限制 Memcached 内存使用 32MB

Sannan sake yi:

sudo systemctl restart memcached

✅Tasiri : Yana rage nauyin CPU akan tsarin Memcached kuma yana inganta ingantaccen caching.

6. Kunna Nginx zuwa cache albarkatun a tsaye

Sau da yawa, PHP yana aiwatar da buƙatun da ke ɗauke da adadi mai yawa CSS, JS, hotuna, amma waɗannan fayilolin ba sa buƙatar fassarar PHP kwata-kwata!
Mafita? Yi amfani da Nginx don adana albarkatu a tsaye!

Gyara tsarin Nginx:

sudo nano /etc/nginx/nginx.conf

Ƙari:

location ~* \.(jpg|jpeg|png|gif|css|js|ico|xml)$ {
    expires max;
    log_not_found off;
}

Bayan adanawa, sake kunna Nginx:

sudo systemctl restart nginx

✅Sakamako : Yana rage adadin lokutan da PHP ke sarrafa fayiloli marasa tsari, don haka rage amfani da CPU.

7. Nemo rubutun PHP wanda yafi amfani da CPU

Idan har yanzu CPU yana da girma bayan ingantawa, yana iya zama cewa wasu rubutun PHP suna gudana sosai.
Yi amfani da umarni mai zuwa don gano tsarin PHP tare da mafi girman amfani da CPU:

ps -eo pid,user,pcpu,pmem,args --sort=-pcpu | grep php

Idan kun ga cewa rubutun PHP yana ɗaukar CPU da yawa, zaku iya kashe shi kai tsaye:

kill -9 PID

Sakamakon : Yana gano "marasa kyau" daidai kuma yana hana tsarin PHP mamaye CPU na tsawon lokaci.

Takaitawa: Hanyoyi 7 don inganta PHP-FPM

Iyakance adadin hanyoyin PHP-FPM, don hana hawan CPU
Kunna OPCache, rage maimaita fassarar lambar PHP
Saita lokacin ƙarewar PHP, don hana aiki na dogon lokaci
Ana duba jinkirin tambayoyin MySQL, inganta aikin binciken bayanai
Daidaita Memcached Memory, rage nauyin CPU
Kunna Nginx a tsaye cache, rage nauyin binciken PHP
Nemo manyan rubutun PHP masu amfani da CPU, daidai ingantawa

a ƙarshe

Haɓaka uwar garken kamar motsa jiki ne, kuna buƙatar yin daidaitattun gyare-gyare kuma kada ku yi rikici!
Bayan jerin ingantawa, uwar garken CPU lodin ya ragu daga 80% zuwa 15%, gidan yanar gizon yana buɗewa sau biyu da sauri!
Idan uwar garken yana da irin wannan matsalolin, gwada waɗannan hanyoyin! 💪

👉Ɗauki mataki yanzu! Inganta PHP-FPM ɗinka kuma ka adana sabar ɗinka! 🚀

comments

您的邮箱地址不会被公开。必填项已用*标注

Gungura zuwa top