2015-09-15 5 views
6

मैं install a Ghost Blog on a shared server via GitHub करना चाहता हूं। स्थापना के दौरान, मुझे npm install, grunt init और grunt prod चलाने की आवश्यकता है। मेरा होस्ट 500 एमबी मेमोरी उपयोग प्रदान करता है, अगर कोई प्रक्रिया 600 एमबी से अधिक का उपयोग करती है तो वह इसे मार देती है।नोड प्रक्रियाओं के लिए सीपीयू और मेमोरी उपयोग को सीमित करने के लिए

इसलिए मुझे इन प्रक्रियाओं के स्मृति उपयोग को सीमित करने के लिए एक विकल्प की आवश्यकता है क्योंकि उन्हें सभी को 500 एमबी से अधिक स्मृति की आवश्यकता है!

मैंने --max-old-space-size=450 के साथ प्रक्रियाओं को चलाने की कोशिश की लेकिन यह काम नहीं कर रहा है।

मुझे खुशी होगी अगर कोई मुझे विकल्प के साथ नोड प्रक्रियाओं को चलाने के बारे में एक ट्यूटोरियल या दस्तावेज़ीकरण का लिंक प्रदान कर सकता है।

धन्यवाद!

अद्यतन: चूंकि मैंने इसे पोस्ट किया है, इसलिए भूत की स्थापना पूरी तरह बदल गई है।

+0

यदि आपका होस्ट ओएस लिनक्स है तो आप किसी भी प्रक्रिया के स्मृति उपयोग को सीमित करने के लिए cgroups का उपयोग कर सकते हैं। – slebetman

+0

cgroups रुकने में नहीं है, और मुझे इसे स्थापित करने की अनुमति नहीं है। लेकिन आपका शुक्रिया! – PDXIII

उत्तर

1
से नोड v8 +

, निम्न लिखकर:

node --help 

एक --v8-विकल्प विकल्प दिखा। फिर टाइप:

node --v8-options 

देता है:

... 
--max_old_space_size (max size of the old space (in Mbytes)) 
    type: int default: 0 
--initial_old_space_size (initial old space size (in Mbytes)) 
    type: int default: 0 
... 

मैं इस तरह पहले विकल्प का उपयोग करने में कामयाब हो:

node --max-old-space-size=250 `which npm` install 

यहाँ हम 250Mo को रैम उपयोग को सीमित करने नोड से कहा, ' चुड़ैल एनपीएम 'भाग वर्तमान एनपीएम पथ देता है और' इंस्टॉल 'वह स्क्रिप्ट है जिसे आप चलाने के लिए चाहते हैं।

+0

शायद मुझे अब और आवश्यकता नहीं है, लेकिन जिज्ञासा से बाहर मान लें कि मेरे पास _package.json_ के साथ एक सामान्य एनपीएम प्रोजेक्ट है और मैं '' 'के' CPU उपयोग को सीमित करना चाहता हूं। प्रारंभ करें 'स्क्रिप्ट', मैं ऐप निर्देशिका में नेविगेट कर सकता हूं और '' 'नोड - मैक्स-पुरानी-स्पेस-साइज = 250 एनपीएम स्टार्ट''' टाइप कर सकता हूं। – PDXIII

+0

@PDXIII निरपेक्ष रूप से! मेरे पास वर्तमान में एक स्वचालित परिनियोजन पाइपलाइन है प्रोजेक्ट जो सीमित कमर कंटेनर द्वारा अनुमत अधिकतम रैम उपयोग राशि से अधिक से बचने के लिए इस कमांड को निष्पादित करता है। –

+0

@Quetin Peltel, धन्यवाद! इसे आजमाएं! – PDXIII

1

यह है कि आप इसे कैसे करते हैं।

आप राम उपयोग को सीमित करने के लिए एक आदेश भेजते हैं।

npm install --max-old-space-size=400 
+0

आपके उत्तर के लिए धन्यवाद। लेकिन जैसा कि मैंने अपनी मूल पोस्ट में वर्णित किया है, मैंने कोशिश की है और यह काम नहीं कर रहा है। लेकिन वैसे भी मुझे चारों ओर एक काम मिला। – PDXIII

+0

@PDXIII अरे। आपने इस मुद्दे को कैसे हल किया? धन्यवाद – tomexx

+0

@tomexx मैंने अभी नहीं किया। मैंने इसके चारों ओर काम किया। जिस परियोजना को मैं सर्वर पर बनाना चाहता था, मैंने इसे स्थानीय रूप से बनाया। – PDXIII

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