ХестиаЦП пхп-фпм процес заузима много ЦПУ ресурса. Како да га оптимизујем?

ХестиаЦП Серверски ЦПУ скок? Комплетан водич за оптимизацију ПХП-ФПМ процеса!

ХестиаЦП пхп-фпм процес заузима много ЦПУ ресурса. Како да га оптимизујем?

Да ли је ЦПУ сервера увек на 100%? Вентилатор се дивље врти? Да ли се брзина отварања веб странице успорава?Кривац би могао бити пхп-фпм!

Недавно сам открио chenweiliang.com Овај ПХП базен php-fpm Процес је лудо потрошио процесор, а сервер се срушио!

Да бих оживео сервер, испробао сам низ метода оптимизације и коначно успео да смањим оптерећење процесора.

Сада, хајде да поделимо ово Водич за ефикасну оптимизацију! 🚀

1. Ограничите број пхп-фпм процеса

пхп-фпм подразумевана подешавања могуneograničenoПроцес се ствара неконтролисано, што доводи до преоптерећења серверског процесора.

Да бисмо га оптимизовали, можемо изменити параметре управљања процесом.

укључити php-fpm Конфигурациони фајлови:

sudo nano /etc/php/*/fpm/pool.d/www.conf
  • *Промените на своју PHP верзију, као што је PHP8.3, и промените је у ово:/etc/php/8.3/fpm/pool.d/www.conf

Упитајте верзију PHP-а коју је поставио HestiaCP

v-list-web-domain user domain.com

На пример:

v-list-web-domain abc chenweiliang.com

У излазу ћете видети нешто попут:

PHP SUPPORT      yes
PHP MODE        php-fpm
PHP VERSION     8.3

То значи да сајт користи ПХП КСНУМКС.

Пронађите и измените следеће параметре:

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

Затим поново покрените php-fpm Да би био ефикасан:

sudo systemctl restart php-fpm

ефекат: Ограничите број процеса како бисте спречили да пхп-фпм превише троши ЦПУ ресурсе.

2. Омогућите ОПЦацхе (да бисте побољшали перформансе ПХП-а)

ПХП поново анализира код сваки пут када се изврши, што је губитак ресурса.
Решење? Омогућите ОПЦацхе и кеширајте свој ПХП код!

Уредити php.ini 文件 :

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

Додајте или измените следеће:

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

Након чувања, поново покрените ПХП процес:

sudo systemctl restart php8.3-fpm

ефекат: Смањите поновљено рашчлањивање ПХП кода, смањите оптерећење ЦПУ-а и побољшајте ефикасност извршавања.

3. Ограничите максимално време извршавања ПХП скрипти

Ако ПХП скрипта ради предуго, ЦПУ ресурси ће бити стално заузети.
Постављање разумног временског периода може спречити „тврдоглаве“ процесе да заузму сервер на дуже време.

укључити php.ini 文件 :

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

Измените следеће параметре:

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

Затим поново покрените ПХП процес:

sudo systemctl restart php-fpm

ефекат: Спречите дуготрајно покретање ПХП процеса и смањите расипање ЦПУ ресурса.

4. Проверите МиСКЛ Споро упит

ПХП-ФПМ има велико оптерећење,То може бити узроковано спорим СКЛ упитом!
Укључити МиСКЛ Спор дневник упита, сазнајте СКЛ наредбе које коче.

Уредите МиСКЛ конфигурациону датотеку:

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

Додај у:

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

Након чувања, поново покрените МиСКЛ:

sudo systemctl restart mysql

Затим користите mysqldumpslow Анализирајте споре упите:

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

ефекат: Откријте СКЛ упите који одузимају много времена, оптимизујте перформансе базе података и индиректно смањите оптерећење ПХП-а.

5. Ограничите употребу ресурса Мемцацхед-а

Гледајући списак процеса, нашао сам Мемцацхед процес искоришћење ЦПУ-а је 24.8%!
Можда је алокација кеша превелика, што узрокује да ЦПУ обрађује велику количину података.

调整 memcached Конфигурација:

sudo nano /etc/memcached.conf

Ревизија:

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

Затим поново покрените:

sudo systemctl restart memcached

ефекат: Смањите оптерећење ЦПУ-а Мемцацхед процеса и побољшајте ефикасност кеша.

6. Омогућите Нгинк-у да кешује статичке ресурсе

Много пута ПХП обрађује захтеве који садрже велики број ЦСС, ЈС, слике, али овим датотекама уопште није потребна ПХП анализа!
Решење? Користите Нгинк за кеширање статичких ресурса!

Уредите Нгинк конфигурацију:

sudo nano /etc/nginx/nginx.conf

Додај у:

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

Након чувања, поново покрените Нгинк:

sudo systemctl restart nginx

ефекат: Смањите број пута када ПХП обрађује статичке датотеке и смањи употребу ЦПУ-а.

7. Пронађите ПХП скрипту која највише користи ЦПУ

Ако је ЦПУ и даље превисок након оптимизације, могуће је да неке ПХП скрипте раде дивље.
Користите следећу команду да бисте сазнали ПХП процес са највећом употребом ЦПУ-а:

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

Ако установите да ПХП скрипта заузима превише ЦПУ-а, можете је директно убити:

kill -9 PID

ефекат:Прецизно идентификујте "лоше јабуке" и спречите ПХП процес да заузме ЦПУ на дуже време.

Резиме: 7 начина за оптимизацију ПХП-ФПМ-а

Ограничите број ПХП-ФПМ процеса, да бисте спречили преоптерећење процесора
Омогућите ОПЦацхе, смањити поновљено рашчлањивање ПХП кода
Подешавање ПХП тимеоут-а, за спречавање дуготрајног рада
Провера МиСКЛ спорих упита, оптимизовати перформансе упита базе података
Подесите Мемцацхед меморију, смањујући оптерећење процесора
Омогућите Нгинк статички кеш, смањујући оптерећење ПХП рашчлањивања
Пронађите ПХП скрипте са високом потрошњом ЦПУ-а, прецизна оптимизација

у закључку

Оптимизација сервера је попут фитнеса, потребно је да извршите прецизна подешавања и не петљајте!
После низа оптимизација, оптерећење процесора мог сервера је пало 80% до 15%, веб локација се отвара дупло брже!
Ако ваш сервер има сличне проблеме, испробајте ове методе! 💪

???? Предузмите акцију одмах! Оптимизујте свој ПХП-ФПМ и сачувајте свој сервер! 🚀

Блог Хопе Цхен Веилианг ( https://www.chenweiliang.com/ ) дели „ХестиаЦП пхп-фпм процес заузима много ЦПУ ресурса, како га оптимизовати? “, може вам бити од помоћи.

Добродошли да поделите везу овог чланка:https://www.chenweiliang.com/cwl-32490.html

Да бисте открили још скривених трикова🔑, добродошли да се придружите нашем Телеграм каналу!

Поделите и лајкујте ако вам се свиђа! Ваша дељења и лајкови су наша стална мотивација!

 

评论

Ваша емаил адреса неће бити објављена. Обавезна поља се користе * Ознака

Артицле Дирецтори
Дођите на врх