VestaCP WEB পরিষেবা "phpfcgid" টেমপ্লেট নির্বাচন করার পরে, প্রচুর সংখ্যক PHP-CGI প্রক্রিয়ার ফলে মেমরি দ্রুত নিঃশেষ হয়ে যায়:
- আমি মূলত সার্ভার পুনরায় চালু করার পরে কয়েক ঘন্টার জন্য মেমরি ফুরিয়ে যাচ্ছিলাম।
- পূর্বে নিষ্ক্রিয় PHP-CGI প্রক্রিয়াটি মারা যায় না, এবং একটি প্রক্রিয়া প্রায় 1টি সাবপ্রসেস চালায়, কমপক্ষে 20M মেমরি খরচ করে।
এসএসএইচ-এ ব্যবহৃত htop
কমান্ড (ইনস্টলেশন প্রয়োজন), আপনি এই অবস্থা দেখতে পারেন ▼
আপনি যদি htop কমান্ড ব্যবহার করার সময় "-bash: htop: কমান্ড পাওয়া যায়নি" একটি ত্রুটি বার্তা পান, তাহলে সমাধানের জন্য দয়া করে এই টিউটোরিয়ালটি দেখুন ▼
প্রচুর সংখ্যক PHP-CGI প্রক্রিয়ার কারণে মেমরি দ্রুত নিঃশেষ হয়ে যায়। সমস্যাটি VestaCP-এর মধ্যে রয়েছেসেন্টওএসphpfcgid টেমপ্লেটে, একটি অপ্টিমাইজড কনফিগারেশন ব্যবহার করা হয়।
- phpfcgid টেমপ্লেটে VestaCP, 1 টি PHP-CGI প্রক্রিয়া সেট করুন যাতে 20টি চাইল্ড প্রসেস চালানো যায়।
দেখা /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh
ফাইলের লাইন 13:
export PHP_FCGI_CHILDREN=20
যাইহোক, এই ধরনের সেটআপ পিএইচপি সাবপ্রসেস ম্যানেজমেন্ট ডকুমেন্টেশনে অ্যাপাচির সতর্কতা লঙ্ঘন করে:
পিএইচপি চাইল্ড প্রসেস ম্যানেজমেন্ট (PHP_FCGI_CHILDREN) সর্বদা mod_fcgid এর সাথে নিষ্ক্রিয় করা উচিত, যা এটির তৈরি করা অ্যাপ্লিকেশন প্রক্রিয়াগুলির জন্য একবারে একটি অনুরোধকে রুট করবে; এইভাবে, PHP দ্বারা তৈরি যে কোনও শিশু প্রক্রিয়া কার্যকরভাবে ব্যবহার করা হবে না। .) ডিফল্টরূপে, এবং পরিবেশ পরিবর্তনশীল সেটিং সহ PHP_FCGI_CHILDREN=0, PHP চাইল্ড প্রসেস ম্যানেজমেন্ট অক্ষম।
কারণ Apache-এর mod_fcgid মডিউলে, PHP-CGI প্রক্রিয়া শুধুমাত্র একটি অনুরোধে সাড়া দিতে পারে এবং একবারে চলতে পারে, PHP-CGI চাইল্ড প্রক্রিয়া খুবই অদক্ষ।
অতএব, পিএইচপি সাবপ্রসেস ম্যানেজমেন্টের সেটিংস সরাসরি নিষ্ক্রিয় করা উচিত ▼
PHP_FCGI_CHILDREN=0
একই সময়ে, যদি আপনার ইতিমধ্যেই একটি তৈরি করা ভার্চুয়াল হোস্ট থাকে, তাহলে আপনাকে সমস্ত ওয়েবসাইটের কনফিগারেশন ফাইলগুলি পরিবর্তন করতে হবে ▼
/home/用户名/web/域名/cgi-bin/fcgi-starter
fcgi-স্টার্টার কনফিগারেশন ফাইল খোলার পরে, নিম্নলিখিত ▼ সন্নিবেশ করান
export PHP_FCGI_CHILDREN=20
▼ এ পরিবর্তন করুন
export PHP_FCGI_CHILDREN=0
- পরিবর্তনের পর, PHP সাবপ্রসেস ম্যানেজমেন্ট mod_fcgid মোডে বন্ধ হয়ে যাবে।
- পিএইচপি-সিজিআই প্রক্রিয়াটি আর শিশু প্রক্রিয়াগুলি তৈরি করবে না, যা অনেক মেমরি সংরক্ষণ করতে পারে।
এছাড়াও, VestaCP নিষ্ক্রিয় প্রক্রিয়াগুলির জন্য একটি সমাপ্তি প্রক্রিয়া সেট করে না:
- সমস্ত সদ্য সম্পাদিত PHP-CGI প্রক্রিয়াগুলি সিস্টেম রিবুট না হওয়া পর্যন্ত মেমরি ব্যবহার করতে থাকবে।
এটি ঠিক করতে, শুধু mod_fcgid কনফিগার ফাইল যোগ করুন /etc/httpd/conf.d/fcgid.conf
▼-এ নিম্নলিখিত সেটিংস যোগ করুন
FcgidIdleTimeout 120
- 2 মিনিট (120 সেকেন্ড) জন্য নিষ্ক্রিয় থাকা PHP-CGI প্রক্রিয়াগুলিকে স্বয়ংক্রিয়ভাবে মেরে ফেলতে Apache সেট করুন।
সেটআপ সম্পূর্ণ হওয়ার পরে, Apache পরিষেবাটি পুনরায় চালু করুন ▼
service httpd restart
পরিষেবাটি পুনরায় চালু হওয়ার পরে, HTOP-এ পূর্বে প্রদর্শিত শত শত PHP-CGI প্রক্রিয়াগুলি আর প্রদর্শিত হবে না৷
সাধারণত, একটি একক Vesta CP ব্যবহারকারীর জন্য একটি একক PHP-CGI প্রক্রিয়া 30 থেকে 40M মেমরি খরচ করে, সম্পূর্ণরূপে সন্তোষজনকলিনাক্সহোস্ট প্রয়োজনীয়তা।
তাইইন্টারনেট মার্কেটিংমানুষ ভালো করতে চায়এসইও, Vesta CP এবং টেমপ্লেটের কনফিগারেশন অপ্টিমাইজ করা খুবই গুরুত্বপূর্ণ ^_^
আপনি VestaCP প্যানেলে নিম্নলিখিত টিউটোরিয়ালগুলি দেখে নিতে পারেন ▼৷
হোপ চেন উইলিয়াং ব্লগ ( https://www.chenweiliang.com/ ) শেয়ার করেছে "অপ্টিমাইজ করা VestaCP phpfcgid টেমপ্লেট কনফিগারেশন প্রসেস মাল্টিপল মেমরি এক্সহাউশন 500 এররস", যা আপনার জন্য সহায়ক।
এই নিবন্ধটির লিঙ্ক শেয়ার করতে স্বাগতম:https://www.chenweiliang.com/cwl-735.html
সর্বশেষ আপডেট পেতে চেন ওয়েইলিয়াং এর ব্লগের টেলিগ্রাম চ্যানেলে স্বাগতম!
📚 এই গাইডটিতে বিশাল মূল্য রয়েছে, 🌟এটি একটি বিরল সুযোগ, এটি মিস করবেন না! ⏰⌛💨
ভালো লাগলে শেয়ার এবং লাইক করুন!
আপনার শেয়ার এবং লাইক আমাদের ক্রমাগত অনুপ্রেরণা!