የ HestiaCP php-fpm ሂደት ብዙ የሲፒዩ ሀብቶችን ይወስዳል እንዴት ማመቻቸት እችላለሁ?

HestiaCP የአገልጋይ ሲፒዩ ፍጥነት? የ PHP-FPM ሂደትን ለማመቻቸት የተሟላ መመሪያ!

የ HestiaCP php-fpm ሂደት ብዙ የሲፒዩ ሀብቶችን ይወስዳል እንዴት ማመቻቸት እችላለሁ?

የአገልጋዩ ሲፒዩ ሁል ጊዜ 100% ነው? ደጋፊው በዱር ይሽከረከራል? የድር ጣቢያው የመክፈት ፍጥነት እየቀነሰ ነው?ጥፋተኛው php-fpm ሊሆን ይችላል!

በቅርቡ አገኘሁ chenweiliang.com ይህ ፒኤችፒ ገንዳ php-fpm ሂደቱ ሲፒዩውን እንደ እብድ በልቷል፣ እና አገልጋዩ ተበላሽቷል!

አገልጋዩን ለማነቃቃት ተከታታይ የማመቻቸት ዘዴዎችን ሞከርኩ እና በመጨረሻም የሲፒዩ አጠቃቀምን መቀነስ ቻልኩ።

አሁን ይህንን እናካፍለው ውጤታማ የማመቻቸት መመሪያ! 🚀

1. የ php-fpm ሂደቶችን ብዛት ይገድቡ

php-fpm ነባሪ ቅንጅቶች ሊኖሩ ይችላሉ።ያልተገደበሂደቱ ከቁጥጥር ውጭ በሆነ ሁኔታ የተፈጠረ ሲሆን ይህም የአገልጋዩ ሲፒዩ ከመጠን በላይ እንዲጭን ያደርገዋል.

እሱን ለማመቻቸት የሂደት አስተዳደር መለኪያዎችን መለወጥ እንችላለን።

ማዞር php-fpm የማዋቀር ፋይሎች፡

sudo nano /etc/php/*/fpm/pool.d/www.conf
  • *እንደ PHP8.3 ወደ የእርስዎ ፒኤችፒ ስሪት ይቀይሩ እና ወደዚህ ይቀይሩት፡/etc/php/8.3/fpm/pool.d/www.conf

በHestiaCP የተዘጋጀውን የPHP ሥሪት ይጠይቁ

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

ይህ ማለት ድህረ ገጹ ይጠቀማል ማለት ነው። ፒኤችፒ 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

ውጤትየ php-fpm የሲፒዩ ሀብቶችን ከመጠን በላይ እንዳይጠቀም ለመከላከል የሂደቶችን ብዛት ይገድቡ።

2. OPCache ን አንቃ (የPHP አፈጻጸምን ለማሻሻል)

ፒኤችፒ ኮድ በተፈጸመ ቁጥር ያድሳል፣ ይህ ደግሞ የሀብት ብክነት ነው።
መፍትሄው? OPCache ን አንቃ እና የPHP ኮድህን መሸጎጥ!

ማረም 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  # 禁用实时检测,提高性能

ካስቀመጡ በኋላ የ PHP ሂደቱን እንደገና ያስጀምሩ:

sudo systemctl restart php8.3-fpm

ውጤት፦ ተደጋጋሚ የPHP ኮድ መተንተንን ይቀንሱ፣ የሲፒዩ ሸክምን ይቀንሱ እና የአፈጻጸም ቅልጥፍናን ያሻሽሉ።

3. የ PHP ስክሪፕቶችን ከፍተኛውን የማስፈጸሚያ ጊዜ ይገድቡ

የPHP ስክሪፕት ለረጅም ጊዜ የሚሠራ ከሆነ የሲፒዩ ሀብቶች ያለማቋረጥ ይያዛሉ።
ምክንያታዊ የሆነ የጊዜ ማብቂያ ጊዜ ማዘጋጀት "ግትር" ሂደቶች አገልጋዩን ለረጅም ጊዜ እንዳይይዙ ይከላከላል.

ማዞር php.ini ሰነድ፡-

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

የሚከተሉትን መለኪያዎች ያስተካክሉ:

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

ከዚያ የ PHP ሂደቱን እንደገና ያስጀምሩ:

sudo systemctl restart php-fpm

ውጤትየPHP ሂደቶች ለረጅም ጊዜ እንዳይሰሩ መከላከል እና የሲፒዩ ሃብት ብክነትን ይቀንሳል።

4. ያረጋግጡ MySQL ዝግተኛ መጠይቅ

PHP-FPM ከፍተኛ ጭነት አለውበዝግተኛ የSQL መጠይቅ የተከሰተ ሊሆን ይችላል!
ማዞር MySQL ቀርፋፋ የጥያቄ ምዝግብ ማስታወሻ, ወደኋላ የሚይዙትን የ SQL መግለጫዎች ያግኙ.

የ MySQL ውቅር ፋይልን ያርትዑ፡

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 秒的查询会被记录

ካስቀመጡ በኋላ MySQL እንደገና ያስጀምሩ:

sudo systemctl restart mysql

ከዚያ ተጠቀም mysqldumpslow ቀርፋፋ መጠይቆችን ይተንትኑ፡

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

ውጤትጊዜ የሚፈጁ የSQL መጠይቆችን ይፈልጉ፣ የውሂብ ጎታ አፈጻጸምን ያሳድጉ እና በተዘዋዋሪ የPHP ጭነትን ይቀንሱ።

5. Memcached ሃብት አጠቃቀምን ይገድቡ

የሂደቱን ዝርዝር ስመለከት አገኘሁ Memcached ሂደት ሲፒዩ አጠቃቀም 24.8% ነው!
ምናልባት የመሸጎጫ ምደባው በጣም ትልቅ ስለሆነ ሲፒዩ ከፍተኛ መጠን ያለው ውሂብ እንዲያስኬድ ያደርገዋል።

ማስተካከል memcached ውቅር፡

sudo nano /etc/memcached.conf

ይከልሱ፡

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

ከዚያ ዳግም አስነሳ፦

sudo systemctl restart memcached

ውጤትየሜምካሼድ ሂደት የሲፒዩ ሸክሙን ይቀንሱ እና የመሸጎጫ ቅልጥፍናን ያሻሽሉ።

6. Nginxን የማይንቀሳቀሱ ንብረቶችን ለመሸጎጥ ያንቁ

ብዙ ጊዜ፣ ፒኤችፒ ብዙ ቁጥር ያላቸውን ጥያቄዎችን ያስኬዳል CSS፣ JS፣ ምስሎችነገር ግን እነዚህ ፋይሎች ፒኤችፒን መተንተን አያስፈልጋቸውም!
መፍትሄው? የማይንቀሳቀሱ ሀብቶችን ለመሸጎጥ Nginx ይጠቀሙ!

የNginx ውቅረትን ያርትዑ፡

sudo nano /etc/nginx/nginx.conf

አክል ወደ፡

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

ካስቀመጡ በኋላ Nginxን እንደገና ያስጀምሩ፡-

sudo systemctl restart nginx

ውጤትፒኤችፒ የማይንቀሳቀሱ ፋይሎችን የሚያስኬድበትን ጊዜ ብዛት ይቀንሱ እና የሲፒዩ አጠቃቀምን ይቀንሱ።

7. ብዙ ሲፒዩ የሚጠቀም የPHP ስክሪፕት ያግኙ

ከተመቻቸ በኋላ ሲፒዩ አሁንም በጣም ከፍ ያለ ከሆነ፣ አንዳንድ የPHP ስክሪፕቶች በጣም እየሰሩ ሊሆኑ ይችላሉ።
ከፍተኛ የሲፒዩ አጠቃቀም ያለውን የPHP ሂደት ለማወቅ የሚከተለውን ትዕዛዝ ይጠቀሙ፡

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

አንድ ፒኤችፒ ስክሪፕት በጣም ብዙ ሲፒዩ እየወሰደ እንደሆነ ካወቁ በቀጥታ ሊገድሉት ይችላሉ፡-

kill -9 PID

ውጤት: “መጥፎ ፖም”ን በትክክል ይለዩ እና የPHP ሂደቱን ለረጅም ጊዜ ሲፒዩ እንዳይይዝ ያድርጉ።

ማጠቃለያ፡ PHP-FPMን ለማመቻቸት 7 መንገዶች

የ PHP-FPM ሂደቶችን ብዛት ይገድቡሲፒዩ ከመጠን በላይ መጫንን ለመከላከል
OPCacheን አንቃ፣ የ PHP ኮድ ተደጋጋሚ ትንታኔን ይቀንሱ
የ PHP ጊዜ ማብቂያን በማቀናበር ላይ, የረጅም ጊዜ ቀዶ ጥገናን ለመከላከል
MySQL ቀርፋፋ መጠይቆችን በመፈተሽ ላይ፣ የውሂብ ጎታ መጠይቅ አፈፃፀምን ያሳድጉ
የተቀረጸ ማህደረ ትውስታን ያስተካክሉየሲፒዩ ሸክምን መቀነስ
Nginx የማይንቀሳቀስ መሸጎጫ አንቃየ PHP ትንተና ሸክሙን በመቀነስ
ከፍተኛ የሲፒዩ አጠቃቀም PHP ስክሪፕቶችን ያግኙ, ትክክለኛ ማመቻቸት

በማጠቃለል

የአገልጋይ ማመቻቸት ልክ እንደ አካል ብቃት ነው፣ ትክክለኛ ማስተካከያዎችን ማድረግ ያስፈልግዎታል እና አያበላሹ!
ከተከታታይ ማሻሻያዎች በኋላ የአገልጋዬ ሲፒዩ ጭነት ቀንሷል 80% ወደ 15%, ድህረ ገጹ በእጥፍ በፍጥነት ይከፈታል!
አገልጋይዎ ተመሳሳይ ችግሮች ካሉት እነዚህን ዘዴዎች ይሞክሩ! 💪

???? አሁን እርምጃ ይውሰዱ! የእርስዎን PHP-FPM ያሻሽሉ እና አገልጋይዎን ያስቀምጡ! ????

ተስፋ Chen Weiliang ብሎግ ( https://www.chenweiliang.com/ ) የተጋራ "HestiaCP php-fpm ሂደት ብዙ የሲፒዩ ሀብቶችን ይወስዳል፣እንዴት ማመቻቸት ይቻላል? ”፣ ለእርስዎ ጠቃሚ ሊሆን ይችላል።

እንኳን በደህና መጡ የዚህን ጽሁፍ ማገናኛ ለማጋራት፡-https://www.chenweiliang.com/cwl-32490.html

ተጨማሪ ድብቅ ዘዴዎችን ለመክፈት የቴሌግራም ቻናላችንን እንኳን በደህና መጡ።

ከወደዳችሁት ሼር እና ላይክ አድርጉ! የእርስዎ ማጋራቶች እና መውደዶች የእኛ ቀጣይ ተነሳሽነት ናቸው!

 

评论ሺ评论评论评论 ፡፡

የኢሜል አድራሻዎ አይታተምም። 项 已 用 ፡፡ * 标注

ወደ ላይ ሸብልል