समय के साथ मेरी मेमोरी का उपयोग बढ़ता है और Django को फिर से शुरू करना उपयोगकर्ताओं के लिए दयालु नहीं है।
मैं अनिश्चित हूं कि मैमोरी यूसेज का इस्तेमाल कैसे किया जाए लेकिन मापने की शुरुआत कैसे की जाए, इस पर कुछ टिप्स उपयोगी होंगे।
मुझे लगता है कि कुछ सरल कदम हैं जो बड़े लाभ पैदा कर सकते हैं। 'डिबग' को सुनिश्चित करना 'गलत' पर आधारित है, यह एक स्पष्ट बात है।
क्या कोई दूसरों को सुझाव दे सकता है? कम ट्रैफ़िक वाली साइटों पर कैशिंग में कितना सुधार होगा?
इस मामले में मैं mod_python के साथ Apache 2.x के तहत चल रहा हूं। मैंने सुना है mod_wsgi थोड़ा दुबला है, लेकिन जब तक मुझे पता है कि लाभ महत्वपूर्ण होगा इस स्तर पर स्विच करना मुश्किल होगा।
संपादित करें: अब तक सुझावों के लिए धन्यवाद। किसी भी सुझाव कैसे स्मृति का उपयोग कर रहा है की खोज करने के लिए? क्या पायथन मेमोरी प्रोफाइलिंग के लिए कोई गाइड हैं?
जैसा कि उल्लेख किया गया है कि कुछ चीजें हैं जो mod_wsgi पर स्विच करने के लिए इसे मुश्किल बना देगा, इसलिए मैं उस दिशा में आगे बढ़ने से पहले जिन लाभों की उम्मीद कर सकता हूं, उनके बारे में कुछ विचार करना चाहता हूं।
संपादित करें: कार्ल ने यहां थोड़ा और विस्तृत उत्तर पोस्ट किया जो पढ़ने योग्य है: Django परिनियोजन: कटिंग अपाचे का ओवरहेड
संपादित करें: ग्राहम डम्पल्टन का लेख सबसे अच्छा मैंने एमपीएम और mod_wsgi संबंधित सामान पर पाया है। मैं इस बात से निराश हूं कि कोई भी ऐप में मेमोरी यूजेज डिबगिंग के बारे में कोई जानकारी नहीं दे सकता है।
फाइनल एडिट: खैर मैं इस बारे में वेबफिकेशन के साथ चर्चा कर रहा हूं कि क्या वे अपाचे को फिर से बनाने में मदद कर सकते हैं और यह इस मामले पर उनका शब्द है:
"मैं वास्तव में यह नहीं सोचता कि एमपीएम वर्कर + mod_wsgi सेटअप पर स्विच करने से आपको बहुत लाभ मिलेगा। मेरा अनुमान है कि आप लगभग 20 एमबी को बचाने में सक्षम हो सकते हैं, लेकिन शायद इससे अधिक नहीं।"
इसलिए! यह मुझे मेरे मूल प्रश्न पर वापस लाता है (जो मैं अभी भी समझदार नहीं हूं)। समस्याओं की पहचान करने के बारे में किसी की पहचान कैसे होती है? यह एक अच्छी तरह से ज्ञात अधिकतम है जिसे आप परीक्षण के बिना ऑप्टिमाइज़ नहीं करते हैं जहां आपको अनुकूलन करने की आवश्यकता है, लेकिन पायथन मेमोरी के उपयोग को मापने के लिए ट्यूटोरियल के तरीके में बहुत कम है और Django के लिए विशिष्ट कोई भी नहीं है।
सभी की सहायता के लिए धन्यवाद, लेकिन मुझे लगता है कि यह सवाल अभी भी खुला है!
एक और अंतिम संपादन ;-)
मैंने इसे django-users की सूची पर पूछा और कुछ बहुत ही उपयोगी उत्तर मिले
ईमानदारी से अंतिम अद्यतन कभी!
यह अभी जारी किया गया था। अभी तक सबसे अच्छा समाधान हो सकता है: प्रोफाइलिंग Django ऑब्जेक्ट आकार और मेमोरी उपयोग Pympler के साथ