VestaCP phpfcgid կաղապարի կազմաձևման գործընթացի օպտիմիզացում՝ բազմակի հիշողության սպառում 500 սխալներ

VestaCP- ն Այն բանից հետո, երբ WEB ծառայությունը ընտրում է «phpfcgid» ձևանմուշը, մեծ թվով PHP-CGI գործընթացներ հանգեցնում են հիշողությունը արագ սպառելու.

  • Սերվերը վերագործարկելուց հետո մի քանի ժամվա ընթացքում ես հիմնականում սպառվում էի հիշողությունից:
  • Նախկինում անգործուն PHP-CGI գործընթացը չի սպանվում, և մեկ պրոցեսն աշխատում է մոտ 1 ենթապրոցեսներ՝ սպառելով առնվազն 20 մ հիշողություն:

Օգտագործվում է SSH-ում htop հրաման (տեղադրումը պահանջվում է), կարող եք դիտել այս կարգավիճակը ▼

Այն բանից հետո, երբ VestaCP-ի WEB ծառայությունն ընտրում է «phpfcgid» ձևանմուշը, PHP-CGI պրոցեսների մեծ քանակությունը հանգեցնում է հիշողության արագ սպառման։

Եթե ​​դուք ստանում եք «-bash: htop: հրամանը չի գտնվել» սխալի հաղորդագրությունը, երբ օգտագործում եք htop հրամանը, խնդրում ենք տեսնել այս ձեռնարկը լուծման համար ▼

PHP-CGI պրոցեսների մեծ քանակությունը հանգեցնում է հիշողության արագ սպառման: Խնդիրը կայանում է VestaCP-ում:CentOSphpfcgid կաղապարում օգտագործվում է չօպտիմիզացված կոնֆիգուրացիա։

  • VestaCP-ն phpfcgid ձևանմուշում սահմանել 1 PHP-CGI պրոցես՝ մինչև 20 երեխա պրոցեսներ գործարկելու համար:

տեսնել /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh Ֆայլի տող 13.

export PHP_FCGI_CHILDREN=20

Այնուամենայնիվ, նման կարգավորումը խախտում է Apache-ի նախազգուշացումը PHP ենթագործընթացների կառավարման փաստաթղթերում.

PHP երեխայի գործընթացի կառավարում (PHP_FCGI_CHILDREN) միշտ պետք է անջատված լինի mod_fcgid-ով, որը միայն մեկ հարցում կուղղորդի դեպի իր կողմից ստեղծված կիրառական գործընթացները, հետևաբար, PHP-ի կողմից ստեղծված ցանկացած զավակային գործընթաց արդյունավետ չի օգտագործվի: (Բացի այդ, PHP-ի երեխայի գործընթացները կարող են պատշաճ կերպով չավարտվել: .) Լռելյայն և շրջակա միջավայրի փոփոխական պարամետրով PHP_FCGI_CHILDREN=0, PHP երեխայի գործընթացի կառավարումն անջատված է:

Քանի որ Apache-ի mod_fcgid մոդուլում PHP-CGI գործընթացը կարող է պատասխանել միայն մեկ հարցման և միաժամանակ գործարկել, PHP-CGI երեխայի գործընթացը շատ անարդյունավետ է:

Հետևաբար, PHP ենթապրոցեսների կառավարման կարգավորումները պետք է ուղղակիորեն անջատվեն ▼

PHP_FCGI_CHILDREN=0

Միևնույն ժամանակ, եթե դուք արդեն ունեք ստեղծված վիրտուալ հոսթ, դուք պետք է փոփոխեք բոլոր վեբ կայքերի կազմաձևման ֆայլերը ▼

/home/用户名/web/域名/cgi-bin/fcgi-starter

fcgi-starter կազմաձևման ֆայլը բացելուց հետո տեղադրեք հետևյալ ▼

export PHP_FCGI_CHILDREN=20

Փոփոխել ▼

export PHP_FCGI_CHILDREN=0
  • Փոփոխությունից հետո PHP ենթապրոցեսների կառավարումը կանջատվի mod_fcgid ռեժիմում:
  • PHP-CGI գործընթացն այլևս չի առաջացնի երեխայի գործընթացները, ինչը կարող է մեծ քանակությամբ հիշողություն խնայել:

Բացի այդ, VestaCP-ն չի սահմանում անգործուն գործընթացների դադարեցման մեխանիզմ.

  • Բոլոր նոր իրականացված PHP-CGI գործընթացները կշարունակեն օգտագործել հիշողությունը, մինչև համակարգը վերաբեռնվի:

Դա շտկելու համար պարզապես ավելացրեք mod_fcgid կազմաձևման ֆայլը /etc/httpd/conf.d/fcgid.conf ▼-ում ավելացրեք հետևյալ կարգավորումները

FcgidIdleTimeout 120
  • Սահմանեք Apache-ն, որպեսզի ավտոմատ կերպով սպանի PHP-CGI գործընթացները, որոնք անգործուն են 2 րոպե (120 վայրկյան):

Կարգավորումն ավարտվելուց հետո վերագործարկեք Apache ծառայությունը ▼

service httpd restart

Ծառայության վերագործարկումից հետո հարյուրավոր PHP-CGI գործընթացները, որոնք նախկինում ցուցադրվել են HTOP-ում, այլևս չեն ցուցադրվի:

Սովորաբար, մեկ PHP-CGI պրոցեսը Vesta CP-ի մեկ օգտագործողի համար սպառում է 30-ից 40 մ հիշողություն, ինչը լիովին բավարարում է:Linuxհյուրընկալողի պահանջները:

հետևաբար,网络 营销մարդիկ ցանկանում են լավ աշխատելSEO, շատ կարևոր է Vesta CP-ի և կաղապարների ^_^ կոնֆիգուրացիան օպտիմալացնելը

Դուք կարող եք դիտել հետևյալ ձեռնարկները VestaCP վահանակի ▼

Ինչպե՞ս կարգավորել Monit գործընթացը CentOS 7 համակարգի Vesta CP վահանակի վրա:

Նախկինում Chen Weiliang-ի բլոգը կիսվել է CentOS 6-ում Monit-ի տեղադրման և կազմաձևման ձեռնարկով:

Այնուամենայնիվ, CentOS 7-ում Monit մոնիտորինգի ծրագրի կազմաձևումը որոշ չափով տարբերվում է CentOS 6-ի կազմաձևից, և դա բոլորովին նույնը չէ:Եթե ​​դու……

Ինչպե՞ս կարգավորել Monit գործընթացը CentOS 7 համակարգի Vesta CP վահանակի վրա:4-րդ

Հույս Chen Weiliang բլոգ ( https://www.chenweiliang.com/ ) կիսվել է «Optimizing VestaCP phpfcgid Template Configuration Process Multiple Memory Exhaustion 500 Errors», որն օգտակար է ձեզ համար:

Բարի գալուստ՝ կիսելու այս հոդվածի հղումը.https://www.chenweiliang.com/cwl-735.html

Բարի գալուստ Chen Weiliang-ի բլոգի Telegram ալիք՝ վերջին թարմացումները ստանալու համար:

🔔 Եղեք առաջինը, ով կստանա արժեքավոր «ChatGPT բովանդակության շուկայավարման AI գործիքի օգտագործման ուղեցույցը» ալիքի վերին գրացուցակում: 🌟
📚 Այս ուղեցույցը պարունակում է հսկայական արժեք, 🌟Սա հազվագյուտ հնարավորություն է, բաց մի՛ թողեք այն։ ⏰⌛💨
Տարածեք և հավանեք, եթե հավանեցիք:
Ձեր տարածումը և հավանումները մեր շարունակական շարժառիթն են:

 

发表 评论

Ձեր էլ. Փոստի հասցեն չի հրապարակվի: Օգտագործվում են պահանջվող դաշտերը * Պիտակ

ոլորել դեպի վերև