लिनक्स स्वप्नशीलता - कर्नेल वीएम सेटिंग्स को समायोजित करना


9

इससे पहले कि आप इसे पढ़ें, कृपया ध्यान दें कि मैं कैशिंग के लाभों को समझता हूं। मैं उस हठधर्मिता से परिचित हूं जो अनुपयोगी राम बर्बाद राम है।

यह प्रश्न वह है जिसे मैंने पिछले प्रश्न से अनुकूलित किया है:

हटाए गए लिनक्स कैश्ड राम

उस सवाल में मैं समायोजित करने के बारे में उत्सुक था कि मेरा सर्वर कैसे उपयोग करता है और रैम को कैश करता है। प्रणाली काफी गतिशील है इसलिए मेरा मानना ​​है कि कैश्ड फाइलें वास्तव में मुझे बहुत लाभ नहीं पहुंचाती हैं। इसके अतिरिक्त, हमारे पास सर्वर पर कोड है जिसे वीडियो फ़ाइलों को संसाधित करने के लिए कम समय में बड़ी मात्रा में रैम तक जल्दी से पहुंचना पड़ता है और मेरा मानना ​​है कि मैं सीधे राम को सौंपने के बजाय प्रदर्शन का लाभ देखूंगा और फिर इसे कैश से साफ़ करूंगा। इसे हाथ लगाना।

मुझे यह पता लगाना है कि क्या आप में से किसी को भी निम्न फ़ाइल में 60 के डिफ़ॉल्ट मान को समायोजित करने का अनुभव है (यह उबंटू में होता है):

/proc/sys/vm/swappiness  

और यदि हां, तो आपने क्या प्रभाव देखा। यदि मैं 30 के साथ 60 के डिफ़ॉल्ट मूल्य को प्रतिस्थापित करता हूं तो क्या मैं कम स्वैपिंग और बहुत अधिक स्टेल कैश का पुनः उपयोग देखूंगा? क्या मैं स्वैप या कैश की पुन: उपयोग को कम करने के लिए 0 या 100 से संपर्क करता हूं?

अंत में, किसी को पता है कि डिफ़ॉल्ट 60 पर सेट क्यों है?

नोट: यदि यह 0 के करीब है, तो लिनक्स रैम में एप्लिकेशन रखना पसंद करेगा और कैश नहीं बढ़ेगा। यदि यह 100 के करीब है, तो लिनक्स अनुप्रयोगों को स्वैप करना पसंद करेगा, और जितना संभव हो उतना कैश बढ़ाना होगा। डिफ़ॉल्ट एक स्वस्थ 60 है। - नीचे दिए गए लिंक के लिए धन्यवाद, 3DInfluence।

जवाबों:


6

संपादित करें: उत्तर को फिर से लिखें ताकि यह छोटा हो और स्पष्ट हो, मुझे आशा है :)

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

तो आपके सवाल का और। जब वीवी सिस्टम सबमिशन टेबल पेज को अनमैप करके और पेजिंग करके उर्फ ​​स्वैपिंग करता है, तो स्वप्निलता नियंत्रित होती है। वीएम सबसिस्टम को स्वैप करने के लिए पृष्ठों को देखने के लिए पृष्ठों को देखने की प्रक्रिया के बारे में बताकर यह काम करता है जब पेज टेबल्स की अदला-बदली का मूल्य + 100% होता है। तो 60 की सेटिंग के कारण सिस्टम पेज पेज से बासी पेजों को पेजिंग करना शुरू कर देगा। तालिका जब यह आपके सिस्टम की मेमोरी का 40% से अधिक उपयोग कर रहा है। यदि आप अपने कार्यक्रमों को कैश की कीमत पर अधिक मेमोरी का उपयोग करने की अनुमति देना चाहते हैं, तो आप स्वेच्छा मूल्य को कम करना चाहते हैं। आप / proc / sys / vm / min_free_kbytes और / proc / sys / vm / vfs_cache_pressure पर भी नज़र डालना चाहेंगे। चूंकि यह भी नियंत्रित करेगा कि रिजर्व में कितनी मेमोरी रखी गई है और कैशिंग कितना आक्रामक है।


@ 3dinfluence - मैं आपके द्वारा ऊपर संदर्भित उस लेख के माध्यम से काम कर रहा हूं। महान सहारा!
पैट्रिक आर

1
linuxinsight.com/proc_sys_vm_hierarchy.html आपको एक वाक्य या दो पर बताएगा कि प्रत्येक ट्यूबल क्या करता है। लेकिन मैं कैसे swappiness एक किताब "लिनक्स सर्वर के लिए प्रदर्शन ट्यूनिंग" कहा जाता है से काम करता है के बारे में है कि जानकारी मिल गया
3dinfluence

+1 धन्यवाद 3dinfluence। अब तक वह पुस्तक बेहद शैक्षिक रही है।
पैट्रिक आर

यह बहुत अच्छा है .... क्या आप अपने आवेदन के प्रदर्शन में सुधार कर पाए हैं?
3dinfluence

मैं प्रदर्शन में सुधार करने में सक्षम रहा हूं। इसके अलावा, मुझे पता चला कि निम्नलिखित कमांड tweeking के दौरान मदद करता है: # sysctl -w vm.swappiness = 40
पैट्रिक आर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.