2011-08-04 10 views
6

क्या आपके सर्वर को 100% CPU उपयोग पर चलाना कोई समस्या है या क्या यह सिर्फ अच्छा CPU उपयोग है?क्या आपके सर्वर को 100% CPU उपयोग पर चलाना कोई समस्या है या क्या यह सिर्फ अच्छा CPU उपयोग है?

मेरे सर्वर में 8 भौतिक कोर लगातार "खुले घंटे"/प्रति घंटे 10 घंटे के लिए 100% पर चल रहे हैं।

कार्यक्रम 8 धागे पर चलने के लिए आर्किटेक्चर किया गया है - और यह पूरी तरह से उनका उपयोग करता है। प्रदर्शन अच्छा है लेकिन बुनियादी ढांचे वाले लोग "अधिकतम आउट सर्वर"

के बारे में चिंतित हैं, मुझे लगता है कि यह उपलब्ध संसाधनों का केवल अच्छा उपयोग है। यदि पूरी तरह से उपयोग नहीं किया जाता है तो बहुत सारे कोर होने का क्या मतलब है।

+1

मुझे नहीं पता कि यह क्यों बंद किया जा रहा है। यह प्रोग्रामिंग प्रश्न की तरह नहीं लगता है, लेकिन यह *** एक प्रोग्रामिंग प्रश्न है *** - यह तय करने के बारे में है कि आपका वितरित प्रोग्राम कार्य के साथ क्या करता है या नहीं। – sharptooth

+0

ऐप और लोड के बारे में बहुत अधिक जानकारी के बिना कहना असंभव है। क्या प्रतिक्रिया-समय की आवश्यकताएं हैं? क्या लोड अत्यधिक अनुमानित है? क्या सर्वर हर समय उपयोगी काम कर रहे हैं, या कुछ सीपीयू कुछ प्रकार के उच्च आवृत्ति मतदान का उपयोग करते हैं? –

+2

नहीं, यह एक आवेदन के लिए हार्डवेयर प्रावधान के बारे में है। – bmargulies

उत्तर

5

इस मुद्दे के सॉफ़्टवेयर पक्ष पर ध्यान देने योग्य सभी उत्तरों का उत्तर। मुझे लगता है कि ओपी को यह जानने में दिलचस्पी हो सकती है कि ऐसा उच्च CPU उपयोग करने से सर्वर की हार्डवेयर विश्वसनीयता प्रभावित होगी। या कम से कम, मुझे लगता है कि मैं चीजों के इस पक्ष के बारे में काफी सटीक दृष्टिकोण दे सकता हूं।

सर्वर के कई घटकों की विश्वसनीयता तापमान पर अत्यधिक निर्भर है। इस संबंध में, कम लोड वाले सर्वर शायद कूलर चलाएंगे, और विफलता की कम संभावना है। लेकिन एक बार जब सीपीयू शीतलन प्रणाली तक पहुंच जाता है तो अधिकतम स्वीकार्य तापमान (मेरे पीसी पर यह 60 डिग्री सेल्सियस है) विश्वसनीयता उच्च भार के साथ बहुत कम नहीं होगी, क्योंकि शीतलन प्रणाली 60 डिग्री सेल्सियस से अधिक होने से बचने के लिए तापमान को नियंत्रित करेगी। यह सच है कि शीतलन प्रणाली प्रशंसकों को तेजी से आगे बढ़ेगी और इससे प्रशंसकों की विफलता की संभावना बढ़ जाएगी। ऐसे उच्च भार के साथ एक और मुद्दा है, अगर गर्मी को प्रभावी तरीके से घेरे से बाहर नहीं निकाला जाता है, तो पूरे सर्वर में उच्च तापमान होगा, जो अन्य घटकों को प्रभावित करेगा। घटक जो इसे अधिक हद तक पीड़ित करेंगे इलेक्ट्रोलाइटिक कैपेसिटर हैं, लेकिन अन्य घटक भी प्रभावित होंगे।

तो सामान्य रूप से, हाँ, किसी भी मशीन की वास्तविकता उस मशीन के oversizing या सुरक्षा कारक के लिए काफी आनुपातिक है। इलेक्ट्रॉनिक सिस्टम की विश्वसनीयता की गणना करने के लिए कई औपचारिक तरीके हैं, सबसे अधिक ज्ञात एमआईएल-एचडीबीके -217 एफ विश्वसनीयता पुस्तिका है, लेकिन कई अन्य (टेलीकोर्डिया इत्यादि) हैं। Reliability engineering एक महान जटिलता, गहराई और जादू का एक विषय है।

मुझे उम्मीद है कि मैं इस विषय पर थोड़ा सा अंतर्दृष्टि देने में सक्षम हूं।

2

इस बात पर निर्भर करता है कि लोड कहां से आता है। यदि भार कुछ डेटा है जो बढ़ता नहीं है - आप ठीक हैं, आप बस जितनी जल्दी हो सके चीजें कर रहे हैं और यह अच्छा है।

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

1

सर्वर क्या कर रहे हैं?

  • यदि वे गणितीय समस्याओं को हल करते हैं, तो आप चाहते हैं कि आप प्रसंस्करण के हर बिट को प्राप्त करें। सीपीयू क्या करता है:
  • अगर वे वास्तविक उपयोगकर्ताओं की सेवा है, तो आप कभी चोटियों के लिए एक सा कमरा है, ताकि वह अपने उपयोगकर्ता आधार एक बार नष्ट नहीं होती है चाहते हो सकता है 10%

इसके अलावा द्वारा बढ़ता है? क्या यह सराहनीय है कि उन्हें वास्तव में इतना गणना करना है? कितना I/O शामिल होना चाहिए? यदि आप (उच्च उपयोग चोटियों

10

लगभग बिना किसी अपवाद के यह समस्या आ जाती है, या सड़क के नीचे समस्याओं का कारण बन जाएगा उम्मीद मांग के रूप में कम -

अंगूठे का एक नियम है कि मैंने देखा है अधिकतम 80% लोड औसत लक्षित करने के लिए है उगता है)। एक वेब सेवा सर्वर पर 100% का सीपीयू उपयोग अच्छा नहीं है।

यदि आपका सीपीयू 100% उपयोग पर है, तो इसका मतलब है कि प्रत्येक बार जब सर्वर को नया अनुरोध मिलता है, तो 100% मौका होता है कि सर्वर को सर्वर पर शुरू होने से पहले कुछ समय तक इंतजार करना होगा ।

सामान्य प्रदर्शन मीठा स्थान लगभग 70% है। क्या वह कम आवाज है? यदि ऐसा है, तो याद रखें कि 70% उपयोग का मतलब यह नहीं है कि 30% सीपीयू बर्बाद हो रहा है। इसके बजाए, इसका मतलब है कि 70% CPUs क्षमता का नमूना अवधि पर का उपयोग किया गया था। सीपीयू माप मेट्रिक्स के लिए, एक नमूना अवधि 2 सेकंड की तरह कुछ है। उस 2 सेकंड के दौरान, उस 70% का टूटना असमान है; दूसरे शब्दों में, यह 1 सेकंड के लिए 100% और 1 सेकंड के लिए 40% की तरह कुछ हो सकता है। इस तरह के छोटे विस्फोटों में 100% उपयोगिता ठीक है, क्योंकि हम जानते हैं कि यदि काम का एक टुकड़ा देरी हो रही है, तो यह केवल एक संक्षिप्त अवधि के लिए है (वह जो मनुष्य को परेशान नहीं कर रहा है)।

0

एक के लिए, कम CPU उपयोग बिजली की खपत को कम करता है। उच्च लोड के तहत नहीं होने पर CPU स्वचालित रूप से अपनी आवृत्ति को कम करते हैं।

इसके अलावा, अपेक्षाकृत कम CPU उपयोग होने का अर्थ है कि विलंबता कम होगी क्योंकि प्रत्येक कार्य जितना संभव हो सके उतना बार बाधित हो जाएगा (विपरीत, एक उच्च CPU लोड बहुत सारे संदर्भ-स्विच को ट्रिगर करता है)।

और, यदि आपको डेटाबेस सर्वर, वेब सर्वर और ईमेल सर्वर जैसे कई एप्लिकेशन चलाने की आवश्यकता है, तो कम CPU उपयोग सभी कार्यों के लिए जगह बनाता है।

हैरानी की बात है, वहाँ उनकी वास्तुकला और कार्यान्वयन के बारे में HTTP सर्वर bewteen भारी अंतर, http://goo.gl/Ha2rt

बनाना सही विकल्प एक कम विलंबता के साथ, पैसे बचाने के समय से पहले हार्डवेयर विफलताओं से बचने और खुश उपयोगकर्ताओं के लिए मदद मिल सकती है देखते हैं।

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