વેસ્ટાસીપી WEB સેવા "phpfcgid" ટેમ્પ્લેટ પસંદ કરે તે પછી, મોટી સંખ્યામાં PHP-CGI પ્રક્રિયાઓને કારણે મેમરી ઝડપથી ખતમ થઈ જાય છે:
- સર્વર પુનઃપ્રારંભ કર્યા પછી મારી પાસે મૂળભૂત રીતે થોડા કલાકો માટે મેમરી સમાપ્ત થઈ ગઈ હતી.
- અગાઉની નિષ્ક્રિય PHP-CGI પ્રક્રિયાને મારી નાખવામાં આવતી નથી, અને એક પ્રક્રિયા લગભગ 1 સબપ્રોસેસ ચલાવે છે, જે ઓછામાં ઓછી 20M મેમરીનો વપરાશ કરે છે.
SSH માં વપરાય છે htop
આદેશ (ઇન્સ્ટોલેશન જરૂરી), તમે આ સ્થિતિ જોઈ શકો છો ▼
જો તમે htop આદેશનો ઉપયોગ કરો ત્યારે તમને "-bash: htop: command not found" ભૂલનો સંદેશ મળે, તો કૃપા કરીને ઉકેલ માટે આ ટ્યુટોરીયલ જુઓ ▼
મોટી સંખ્યામાં PHP-CGI પ્રક્રિયાઓને કારણે મેમરી ઝડપથી ખતમ થઈ જાય છે. સમસ્યા VestaCP માં રહેલી છેCentOSphpfcgid ટેમ્પલેટમાં, એક અપ્રમાણિત ગોઠવણીનો ઉપયોગ થાય છે.
- phpfcgid નમૂનામાં VestaCP, 1 ચાઇલ્ડ પ્રક્રિયાઓ સુધી ચલાવવા માટે 20 PHP-CGI પ્રક્રિયા સેટ કરો.
જુઓ /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh
ફાઇલની લાઇન 13:
export PHP_FCGI_CHILDREN=20
જો કે, આવા સેટઅપ 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-સ્ટાર્ટર રૂપરેખાંકન ફાઇલ ખોલ્યા પછી, નીચેની ▼ દાખલ કરો
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
- PHP-CGI પ્રક્રિયાઓને આપમેળે નાશ કરવા માટે Apache સેટ કરો જે 2 મિનિટ (120 સેકન્ડ) માટે નિષ્ક્રિય છે.
સેટઅપ પૂર્ણ થયા પછી, Apache સેવાને પુનઃપ્રારંભ કરો ▼
service httpd restart
સેવા પુનઃપ્રારંભ થયા પછી, સેંકડો PHP-CGI પ્રક્રિયાઓ જે અગાઉ HTOP માં પ્રદર્શિત કરવામાં આવી હતી તે હવે પ્રદર્શિત થશે નહીં.
સામાન્ય રીતે, એક વેસ્ટા CP વપરાશકર્તા માટે એક જ PHP-CGI પ્રક્રિયા 30 થી 40M મેમરી વાપરે છે, જે સંપૂર્ણ સંતોષકારક છે.Linuxયજમાન જરૂરિયાતો.
તેથી,ઈન્ટરનેટ માર્કેટિંગલોકો સારું કરવા માંગે છેSEO, વેસ્ટા CP અને ટેમ્પ્લેટ્સનું રૂપરેખાંકન ઑપ્ટિમાઇઝ કરવું ખૂબ જ મહત્વપૂર્ણ છે ^_^
તમે VestaCP પેનલ ▼ પર નીચેના ટ્યુટોરિયલ્સ જોઈ શકો છો
હોપ ચેન વેઇલિયાંગ બ્લોગ ( https://www.chenweiliang.com/ ) "Optimizing VestaCP phpfcgid ટેમ્પલેટ કન્ફિગરેશન પ્રોસેસ મલ્ટીપલ મેમરી એક્ઝોશન 500 એરર્સ" શેર કર્યું છે, જે તમારા માટે મદદરૂપ છે.
આ લેખની લિંક શેર કરવા માટે આપનું સ્વાગત છે:https://www.chenweiliang.com/cwl-735.html
નવીનતમ અપડેટ્સ મેળવવા માટે ચેન વેઇલિઆંગના બ્લોગની ટેલિગ્રામ ચેનલ પર આપનું સ્વાગત છે!
📚 આ માર્ગદર્શિકામાં ઘણું મૂલ્ય છે, 🌟આ એક દુર્લભ તક છે, તેને ચૂકશો નહીં! ⏰⌛💨
ગમે તો શેર કરો અને લાઈક કરો!
તમારી શેરિંગ અને લાઈક્સ એ અમારી સતત પ્રેરણા છે!