2013-07-10 9 views
5

तो मैं अंत में मिल गया है nginx + uWSGI स्थापितकैसे uWSGI प्रक्रिया को मारने के लिए

समस्या अब मैं कर रहा हूँ है, लेकिन जब मैं कोड मैं देखने पर uWSGI प्रक्रिया फिर से शुरू करनी में कोई बदलाव करना मेरे Django के लिए सफलतापूर्वक चल रहा है अपने परिवर्तनों को

महसूस मैं जैसे मैं सही कमांड यहाँ चला रहा हूँ (मैं बहुत रूप में अच्छी तरह btw linux में नया हूँ):

uwsgi --stop /var/run/uwsgi.pid 
uwsgi --reload /var/run/uwsgi.pid 

मैं जब मैं इन आदेशों को चलाने के लिए कोई त्रुटि मिलती है लेकिन मेरे पुराने कोड अभी भी है क्या लोड

मैं भी अपने नहीं एक कोडन मुद्दा पता है क्योंकि मैं अपने विकास के सर्वर में मेरे Django एप्लिकेशन भाग गया और सब कुछ ठीक

उत्तर

4

सिफारिश संकेत करने के लिए आवेदन डेटा की पुन: लोड --touch-reload विकल्प का उपयोग करने के लिए है जिस तरह से भाग गया। एक .ini ठीक पर नमूना वाक्य रचना है:

touch-reload /var/run/uwsgi/app/myapp/reload 

कहाँ myapp आपके आवेदन नाम है। /var/run/uwsgi/app ऐसी फ़ाइलों के लिए अनुशंसित स्थान है (कहीं भी हो सकता है)। reload फ़ाइल एक खाली फ़ाइल है जिसका टाइमस्टैम्प uwsgi द्वारा देखा जाता है, जब भी यह बदलता है (उदाहरण के लिए, touch का उपयोग करके) uWSGI उस परिवर्तन को पहचानता है और संबंधित यूडब्ल्यूएसजीआई एप्लिकेशन इंस्टेंस को पुनरारंभ करता है।

तो, जब भी आप अपना कोड अपडेट करते हैं तो आपको एप्लिकेशन के इन-मेमोरी संस्करण को अपडेट करने के लिए फ़ाइल को स्पर्श करना चाहिए। उदाहरण के लिए, बैश पर:

sudo touch /var/run/uwsgi/app/myapp/reload 

नोट --reload वर्तमान uWSGI संस्करण पर एक गैर-दस्तावेजी विकल्प है।

+0

जब आप एक .ini फ़ाइल पर नमूना कहते हैं तो क्या आप का मतलब है कि आईएनआई फ़ाइल में टच रीलोड लाइन? और ऐप/मैपैप संरचना क्या आ रही है? – tareq

+0

हां, यह लाइन आपके आवेदन के अनुरूप uWSGI .ini फ़ाइल में जोड़ दी जानी चाहिए। यदि आप एक्सएमएल, वाईएएमएल, जेएसओएन का उपयोग करते हैं तो आपको .ini के ' = ' मानक के बजाय सही वाक्यविन्यास का उपयोग करना होगा। मैं '/ var/run/uwsgi/app/' के तहत 'टच-रीलोड' फ़ाइल को रखने के लिए उपयोग करता हूं लेकिन आप इसे कहीं भी सुविधाजनक बना सकते हैं, जैसे आपकी होम निर्देशिका। – flaviodesousa

+0

अब आप जिस टच-रीलोड फ़ाइल को संदर्भित करते हैं ??? अभी के रूप में मैं अपनी आईएनआई फ़ाइल 'टच-रीलोड/पथ/से/मेरी/आईएनआई/फाइल' में सोच रहा हूं, हालांकि यह समझ में नहीं आता है, मुझे लगता है कि मुझे टच-रीलोड फ़ाइल बनाने की आवश्यकता है? मैं उस फाइल में क्या रखूं? – tareq

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