2008-12-26 5 views
5

मैं फास्टसीजीआई और lighttpd का उपयोग कर एक Django ऐप चला रहा हूँ।फास्टसीजीआई maxrequests, maxspare, minspare, maxchildren के लिए उपयोग करने के लिए क्या मूल्य?

किसी ने मुझसे व्याख्या कर सकते हैं कि मैं क्या विचार करना चाहिए पर निर्णय करते समय मूल्य maxrequests, maxspare, minspare के लिए उपयोग करने के लिए, maxchildren?

ये विकल्प भी अच्छी तरह से प्रलेखित नहीं हैं, लेकिन काफी महत्वपूर्ण लगते हैं।

मुझे बताएं कि वे क्या करते हैं; मैं समझना चाहता हूं कि प्रभाव उनके पास है और मुझे यह तय करना चाहिए कि किस मूल्य का उपयोग करना है।

धन्यवाद।

उत्तर

13

की परिभाषा

 
    maxrequests: How many requests does a child server before being killed 
       and a new one forked 
    maxspare : Maximum number of spare processes to keep running 
    minspare : Minimum number of spare processes to prefork 
    maxchildren: Hard limit number of processes in prefork mode 

के साथ शुरू इसका मतलब है कि आप सबसे अधिक maxchildren पर होगा प्रक्रियाओं अपने वेब सर्वर में किसी भी समय पर चल रहा है, प्रत्येक maxrequests अनुरोधों के लिए चल रहे हैं। सर्वर शुरू होने पर आपको minspare प्रक्रियाएं मिलेंगी, जो अधिकतम स्पेयर (या maxchildren) तक बढ़ते रहेंगे यदि अधिक अनुरोध आ रहे हैं।

तो, minspare आप कहते हैं कि कितने समवर्ती अनुरोध आप कम से कम उम्मीद कर रहे हैं देता है, और (प्रक्रिया निर्माण से बचने के लिए अगर आप एक साथ शुरू महत्वपूर्ण है, यह अच्छा है पर शुरू करने के लिए, 10 कहते हैं) maxspare की सुविधा देता है आप कहते हैं कि आपके सर्वर में कितने समवर्ती अनुरोध होंगे (इसके अपेक्षित प्रतिक्रिया समय के साथ समझौता किए बिना और इसी तरह के सत्यापन के लिए तनाव परीक्षण की आवश्यकता है)। और maxrequests प्रत्येक बच्चे के जीवनकाल के बारे में बात कर रहा है, अगर वे किसी भी तरह की बाधा के कारण हमेशा के लिए नहीं चल सकते हैं।

+0

अच्छी व्याख्या। हालांकि आप maxrequests के बारे में और अधिक कह सकते हैं? यह मेरी सबसे बड़ी चिंता है। एक निश्चित संख्या के अनुरोध के बाद आप एक बच्चे की प्रक्रिया क्यों मरना चाहेंगे? अंतिम स्मृति रिसाव से बचाने के लिए? – ibz

+0

मैं सभी के लिए बात नहीं कर सकता, हालांकि Django और fastcgi के साथ हम लंबे समय तक चलने वाली fastcgi प्रक्रियाओं के साथ बहुत सारी स्मृति समस्याएं देख रहे हैं। 'Maxrequests' के लिए उचित मूल्य निर्धारित करने से हमें बड़ी प्रक्रियाओं को मैन्युअल रूप से मारने से रोकता है क्योंकि वे मेमोरी रिसाव के लिए काफी नुकसान करने के लिए काफी देर तक नहीं हैं। –

+0

तो maxchildren और maxspare के बीच क्या अंतर है? वे मेरे लिए अनावश्यक लगते हैं। –

-1

अपने अपाचे कार्यकर्ता सेटिंग्स के साथ अपने fcgi सेटिंग्स समन्वय करने के लिए मत भूलना। मैं आमतौर पर एफसीजीआई श्रमिकों के मुकाबले अधिक अपाचे श्रमिकों को रखता हूं ... वे हल्के वजन वाले हैं और अनुरोध के संसाधित होने के लिए उपलब्ध एफसीजीआई कार्यकर्ता के लिए इंतजार कर सकते हैं यदि सहमति मेरे अधिकतम स्पेयर से अधिक हो।

+1

लाइटपैड में अपाचे कर्मचारी नहीं हैं। – gw0

संबंधित मुद्दे