सिस्टम लोड कितना ऊंचा जा सकता है?


12

हर बार जब मैं SSH के माध्यम से अपने सर्वर में प्रवेश करता हूं तो यह मुझे सर्वर की थोड़ी जानकारी देता है। IE आईपी पता, स्वैप उपयोग, मेमोरी उपयोग, आदि अन्य चीजों में से एक यह मुझे चमकती है सिस्टम लोड। अब ज्यादातर समय सिस्टम लोड नंबर <0.10 है, लेकिन दूसरी बार जब मैंने इसे देखा है तो यह 0.89 तक चला गया है (आमतौर पर बूट के आसपास)।

इससे यह सवाल उठता है कि सिस्टम लोड कितना अधिक हो सकता है? उदाहरण के लिए क्या यह संभव है कि 2.00 तक भी जा सके?


आंशिक भाग सीपीयू उपयोग को इंगित करता है, दशमलव भाग प्रतीक्षा प्रक्रियाओं की संख्या है। कुछ 100.89की तुलना में अधिक संभावना होगी100.00
लेकेनस्टेन


@ कालेब, मैं असहमत हूं कि यह एक डुप्लिकेट है। यह संभव है कि ओपी का इरादा कुछ इसी तरह से पूछने का था, जैसे "सिस्टम लोड कितना ऊंचा जा सकता है (और अभी भी स्वीकार्य रूप से चलता है?")। लेकिन जैसा कि यह कहा गया है, यह एक ही सवाल नहीं है।
सायकल

@ साइक्लोप्स: यदि ओपी सर्वर पर स्वीकार्य स्तरों के बारे में पूछने का इरादा नहीं करता था और विशुद्ध रूप से सैद्धांतिक सवाल पूछ रहा था कि कैसे * निक्स सिस्टम ने काम किया है तो यहां विषय नहीं होगा और यूनिक्स के लिए पलायन करने के लिए एक उम्मीदवार?
कालेब

जवाबों:


17

इससे यह सवाल उठता है कि सिस्टम लोड कितना अधिक हो सकता है? उदाहरण के लिए क्या यह संभव है कि 2.00 तक भी जा सके?

पूर्ण रूप से। uptimeमैन पेज देख रहे हैं :

   System load averages is the average number of processes that are either
   in a runnable or uninterruptable state.  A process in a runnable  state
   is  either  using the CPU or waiting to use the CPU. A process in unin‐
   terruptable state is waiting for some I/O access, eg waiting for  disk.
   The  averages  are  taken over the three time intervals.  Load averages
   are not normalized for the number of CPUs in a system, so a load  aver‐
   age  of 1 means a single CPU system is loaded all the time while on a 4
   CPU system it means it was idle 75% of the time.

इसलिए यदि आपके पास चलाने के लिए बहुत सारी प्रक्रियाएँ हैं (या I / O की प्रतीक्षा में बहुत सारी प्रक्रियाएँ अवरुद्ध हैं), तो आपके पास उच्च लोड औसत होने वाला है। यह लेख इसके बारे में अधिक विस्तार से बात करता है, और अन्य संसाधनों के लिए उपयोगी लिंक है।

एक अनलोड सिस्टम पर, लोड औसत आमतौर पर 0 <= लोड_ऑवरेज <= n की सीमा में होगा , जहां n आपके सिस्टम पर कोर की संख्या है।


1
हाँ, प्रतीक्षा कर रहा है मैं के लिए / ओ एक आसान तरीका लोड का एक बहुत बनाने के लिए है: माउंट एक NFS शेयर, NFS सर्वर की बारी, ऊपर 10.000 प्रक्रियाओं है कि NFS शेयर पर कुछ को छूने की कोशिश शुरू: बूम, 10.000 का भार
जेन्स टिम्मरमैन

5

मैंने देखा है जिंदा सिस्टम ने हजारों को मारा। लोड की औसत प्रक्रियाओं के आधार पर एक औसत माप लोड करें जो कि गुठली का ध्यान आकर्षित करने और सीपीयू पर कुछ समय दिए जाने के लिए कितनी प्रतिस्पर्धा है। यदि मशीन को नौकरियों या दुर्घटनाग्रस्त होने के साथ उतारा जाता है, तो इसमें लंबा समय लग सकता है।

कौन सा स्तर स्वीकार्य है यह मशीन पर निर्भर करता है, कोर की संख्या, उपयोग में कर्नेल जॉब शेड्यूलर और आपके द्वारा अपेक्षित नौकरियां। मेरे पास कुछ मशीनें हैं जो ~ 10 रेंज में काफी खुश हैं लेकिन अगर वे 40-50 से टकराते हैं तो नीचे गिर जाते हैं। अन्य 2 पर ध्यान देने योग्य हो जाते हैं और 10 पर अनुपयोगी हो जाते हैं।

यह बहुत अधिक होने के कारण लोड के लिए असामान्य नहीं है क्योंकि एक ही बार में बहुत सारे काम किए जा रहे हैं और मशीन घुमावदार है। मैं एक डेस्कटॉप लिनक्स के लिए ड्यूरिंग बूट को हिट करने के लिए ~ 1 काफी सामान्य भार पर विचार करूंगा, फिर कुछ भी नहीं करते हुए ~ 0.1 पर बस जाऊंगा।


3
मामूली सुधार: लोड औसत समय की माप नहीं है। यह प्रतीक्षा कर रही प्रक्रियाओं की औसत संख्या है। 1) एक सीपीयू को हॉगिंग करने वाली एक प्रक्रिया और दूसरे को कभी नहीं मिलने के बीच अंतर बताने का कोई तरीका नहीं है, और 2) दो प्रक्रियाएं लगातार व्यापार बंद कर रही हैं। वे दोनों 1.0 का भार होगा।
प्लूटोर

1
मैंने 1500+ एक गंभीर रूप से फ़्यूबर्ड लिनक्स बॉक्स पर देखा है। फिर यह मर गया।
टॉम ओ'कॉनर

3

लिनक्स पर, सिस्टम लोड औसत मान तीन अलग-अलग राज्यों में से एक में प्रक्रियाओं से युक्त होते हैं। सामान्य तौर पर, कोई कह सकता है कि लोड औसत सीपीयू समय की प्रतीक्षा करने या सीपीयू समय का उपभोग करने वाली प्रक्रियाओं की मात्रा है। लोड औसत अवलोकन में तीन मान पिछले मिनट, अंतिम 5 मिनट और अंतिम 15 मिनट में लोड औसत हैं।

लोड औसत की ओर गिना जाने वाली प्रक्रियाओं की तीन अलग-अलग अवस्थाएँ हैं: (1) सीपीयू पर चलने वाली प्रक्रियाएँ, (2) सीपीयू समय की प्रतीक्षा करने वाली प्रक्रियाएँ और (3) निर्बाध नींद में प्रक्रियाएँ। सीपीयू लोड उत्पन्न नहीं करते हुए अंतिम श्रेणी, सिस्टम लोड औसत को काफी बढ़ा सकती है।

उदाहरण के लिए, एक दर्जन प्रक्रियाएं जो एक डिस्क से पढ़ने के लिए इंतजार कर रही हैं, जो बहुत व्यस्त या अनुपलब्ध है, निर्बाध नींद में प्रक्रियाओं के रूप में 12 का लोड औसत उत्पन्न करेगी, लेकिन इस बीच आपका सीपीयू पूरी तरह से निष्क्रिय हो सकता है।

तो, हाँ, लोड औसत आसानी से दोहरे अंकों तक जा सकता है। कितना बुरा है, बल्कि यह आपके हार्डवेयर पर निर्भर है। यदि आपके पास 16 कोर हैं, तो सीपीयू समय की प्रतीक्षा करने वाली 16 प्रक्रियाएं इतनी बुरी नहीं हैं। एक ही कोर मशीन पर, सीपीयू समय की प्रतीक्षा करने वाली 3 प्रक्रियाएं बहुत खराब हो सकती हैं।


मुझे लगता है कि यह केवल खराब है अगर वे सीपीयू-बाउंड प्रक्रियाएं हैं, जो दुर्लभ है। अधिकांश बड़ी प्रक्रियाएं IO- बाउंड या / और RAM- बाउंड होती हैं।
पेटेर -

3

10000 थ्रेड्स में अनंत लूप चलाने वाली एक सरल सी प्रक्रिया करें। इसे बहुत कम प्राथमिकता (+20) दें। आपका लोड 10000 होगा, जबकि आपका सिस्टम अभी भी उपयोग करने योग्य होगा। यह केवल बहुत कम रैम (अधिकतम कुछ मेगाबाइट पर) का उपयोग करेगा।

यद्यपि यह एक बहुत ही असामान्य विन्यास है, वास्तविक प्रणालियों में आपको यह नहीं मिलेगा।

सिस्टम लोड का मतलब केवल सीपीयू टाइम स्लॉट के इंतजार में होने वाली प्रक्रियाओं की संख्या है, कोई कम और कोई अधिक। यहां सिस्टम लोड की व्याख्या करने के उचित तरीके के बारे में एक और जवाब है ।

दैनिक अनुभव में, 30+ से अधिक के लोड का मतलब ज्यादातर कुछ समस्या है।


2

एक पुरानी 450Mhz सीपीयू खाने वाली एक प्रक्रिया को मारने के कुछ सेकंड बाद:

यहाँ छवि विवरण दर्ज करें


1

जब आप बार-बार ऐसी प्रक्रियाओं को शुरू करते हैं जो तुरंत ब्लॉक हो जाती हैं, तो लोड आपके द्वारा शुरू किए जाने वाली प्रक्रियाओं की संख्या जितनी अधिक होगी। मान लें कि आपके पास पर्याप्त रैम है कि सिस्टम स्वैपिंग नहीं कर रहा है, तो सिस्टम भी उत्तरदायी रहेगा क्योंकि ब्लॉकिंग प्रक्रियाओं के कारण लोड वास्तव में हानिकारक नहीं है।


1

मैंने लोड के> 200 पर एक सर्वर देखा है।

मैं परीक्षण और देखने पर जोर दूंगा।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.