Django को "एप्लिकेशन सर्वर" के रूप में बनाया गया है, न कि "वेब सर्वर"।
दूसरे शब्दों में, Django से स्थैतिक फ़ाइलों की सेवा करने से अपाचे या Nginx का उपयोग करने से भी बदतर प्रदर्शन होगा। ये स्थैतिक सामग्री सर्वर (1) सी में लिखे गए हैं और (2) प्रदर्शन के लिए अनुकूलित हैं।
इसके विपरीत, Django शुद्ध पायथन में लिखा गया है (1) और (2) एक आवेदन के विकास के लिए अनुकूलित।
documentation देखें।
यह पूरी तरह से ठीक हो सकता है। मैंने उत्पादन में स्थिर सामग्री की सेवा करने के लिए Django का उपयोग किया है, जब मुझे पता था कि भार अधिक नहीं होगा और मैं बड़ी फाइलों की सेवा नहीं कर रहा था। यह इस बात पर निर्भर करता है कि वास्तव में किस तरह का पर्यावरण "उत्पादन" है।
FYI करें, एक common उत्पादन सेटअप Nignx, Django, Gunicorn, और पर्यवेक्षक उपयोग करने के लिए किया जाएगा। Nginx डिस्क से स्थैतिक सामग्री सर्वर और इसके बाकी हिस्सों को गनिकोर्न में रिवर्स प्रॉक्सी करता है, जो कई Django उदाहरण चलाता है। पर्यवेक्षक Gunicorn पर नज़र रखता है और यह सुनिश्चित करता है कि यह चल रहा है। यह सब इस बात पर निर्भर करता है कि आपको किस स्तर के वेब एप्लिकेशन की आवश्यकता है।
स्रोत
2014-04-03 22:01:13
मैं वेबफैक्शन का उपयोग कर रहा हूं और अपाचे मेरी स्टेटिक फाइलों की सेवा कर रहा है लेकिन मुझे यकीन नहीं है कि मेरे मीडिया की सेवा कैसे की जा रही है। मीडिया फ़ोल्डर वर्तमान में मेरे प्रोजेक्ट फ़ोल्डर के अंदर है, जबकि मेरी 'static_files' बाहर है, इसे अपाचे द्वारा परोसा जा रहा है। क्या मुझे अपना मीडिया फ़ोल्डर static_files में रखना चाहिए और उचित कनेक्शन बनाना चाहिए? अगर मुझे अभी भी मेरे यूआरएल में 'स्थिर' (...) की आवश्यकता है तो मैं अधिक उत्सुक हूं। यदि आपके पास समय है तो हाँ/कोई जवाब पर्याप्त नहीं होगा :) – AllTheTime
अरे, मैं वेबफैक्शन का भी उपयोग कर रहा हूं। मेरे पास एक अलग वेबफैक्शन ऐप में मीडिया फ़ोल्डर भी है (मुझे लगता है कि आपके पास स्थैतिक के लिए एक है।)। तो, अंत में, मेरे पास प्रत्येक वेबसाइट के लिए 3 अलग-अलग ऐप्स हैं, एक स्थिर की सेवा करने के लिए, दूसरा मीडिया के लिए और दूसरा Django के लिए। आपको urls.py में स्थिर रेखा निर्दिष्ट करने की आवश्यकता नहीं है। सही गंतव्य फ़ोल्डर और कॉन्फ़िगर किए गए यूआरएल को इंगित करने के लिए आपको बस उचित {मीडिया, स्टेटिक} _ROOT और {मीडिया, स्टेटिक} _URL (यदि आवश्यक हो तो STATICFILES_DIRS के साथ) सेट करने की आवश्यकता है (जिन्हें आपने अपनी वेबसाइट पर ऐप्स निर्दिष्ट करते समय निर्दिष्ट किया है)। – argaen
बीटीडब्ल्यू, static_files के अंदर मीडिया फ़ोल्डर न रखें, वे अलग-अलग चीजें हैं इसलिए अपनी परियोजना के बेहतर रखरखाव और संरचना के लिए अलग रखें। – argaen