(एक विंडोज आदमी पूछता है) लिनक्स पर डिस्क लेटेंसी को मापना: क्या मैं परेशान हूं?


11

विंडोज पर, जब भी मैं इस बात की पुष्टि / पुष्टि करना चाहता हूं कि एक वॉल्यूम पर IO- संबंधित समस्याएँ हो सकती हैं जो डेटाबेस या अन्य कम-विलंबता ऐप पर रहती हैं, मैं डिस्क विलंबता की जांच करता हूं।

अगर मुझे विंडोज औसत डिस्क सेकंड / ट्रांसफर काउंटर> 18-20 सेमी लगातार दिखाई देता है, तो कोयले की खान में मेरी कैनरी बस मर गई और मुझे आगे की जांच करने की आवश्यकता है। बूंद-बूंद सरल।

मैं अब लिनक्स देख रहा हूं, और एक समान विलंबता-आधारित मीट्रिक नहीं देखता। मैंने जो त्वरित शोध किया है, वह बताता है कि शायद मैं चाहता भी नहीं हूँ ... मैं बहुत सारे संदर्भों को देखता हूँ I / O प्रतीक्षा करें जिस तरह से यह सबसे महत्वपूर्ण ट्रैक है।

क्या अंगूठे का एक बॉलपार्क नियम है जिसे आप इस संबंध में उपयोग करते हैं? उदाहरण के लिए कोई भी i / o प्रतीक्षा है जो मुझे डेटाबेस की मात्रा के लिए बुरा लगता है? क्या एक साधारण iostat कमांड है जो मुझे सिर्फ नेत्रगोलक टॉप की तुलना में समग्र डिस्क स्वास्थ्य पर बेहतर नज़र देता है?

बहुत धन्यवाद!


4
आप ऊपर देख सकते हैंioping
ewwhite

धन्यवाद, @ नया मुझे लगता है कि मैं सिर्फ सोच रहा हूं कि क्या मुझे अपना ध्यान पूरी तरह से बदलने की जरूरत है और इसके बजाय एक अलग तरीके से निगरानी करें, आप जानते हैं?
रसेल क्रिस्टोफर

2
अपने सिस्टम पर sysstat संग्रह सक्षम करें। फिर आप iowait CPU प्रतिशत की जांच कर सकते हैं, जो IO- संबंधित धीमापन के निदान के लिए बहुत उपयोगी है।
ईईएए

2
@RussellChristopher आप यहाँ उदाहरण sarआउटपुट देख सकते हैं । कॉलम पर ध्यान दें । %iowait
EEAA

@ मैट, जबकि यह बहुत समान है, ध्यान थोड़ा अलग है। क्यूए एक नकली वातावरण में परीक्षण करने पर अधिक केंद्रित है, जहां यह क्यू उत्पादन वातावरण में वर्तमान प्रदर्शन की निगरानी के बारे में अधिक लगता है।
बियोवुल्फ़नोडे42

जवाबों:


12

व्यक्तिगत रूप से मैं कमांड का उपयोग करता हूं iostat -xk 10और awaitकॉलम को देखता हूं ।

  • -x प्रदर्शन विस्तारित आँकड़े।
  • -k प्रति सेकंड किलोबाइट में प्रदर्शन आंकड़े। या मेगाबाइट / एस के लिए मी का उपयोग करें।
  • सेकंड में 10 प्रदर्शन अंतराल

यह विंडोज़ औसत डिस्क सेकंड / ट्रांसफर के लिए लगभग समान मीट्रिक है और सेकंड के बजाय एमएस में सूचीबद्ध है। इसलिए अंगूठे के समान नियम लागू किए जा सकते हैं, हालांकि यह सभी प्रकार की चीजों पर निर्भर करेगा। मुझे आमतौर पर लगता है कि उपयोगकर्ता 15ms और 20ms में बड़बड़ाना शुरू कर देते हैं।

गिनती पैरामीटर के साथ देखने के लिए ctrl + c को छोड़ें, या पुनरावृत्तियों की संख्या निर्दिष्ट करें। ध्यान दें कि पहला पुनरावृत्ति परिणाम पहले पुनरावृत्ति में उपयोग किए गए छोटे समय के नमूने के कारण भारी तिरछा है।

से man iostatपेज

इंतजार के औसत समय (मिलीसेकेंड में) डिवाइस के लिए जारी किए गए आई / ओ अनुरोधों के लिए कार्य किया जाना है। इसमें कतार में अनुरोधों द्वारा खर्च किया गया समय और उन्हें सर्विस करने में लगने वाला समय शामिल है।

संपादित करें: await मुख्य मीट्रिक है जिसका उपयोग मैं उत्पादन भार के तहत एक डिस्क देखने के लिए करता हूं, यह देखने के लिए कि क्या इसके थ्रूपुट और आईओपी मांग के साथ रखने में सक्षम हैं।

% Iowait स्टेट, cpu और डिस्क उपयोग के बीच संतुलन के बारे में अधिक है। यदि cpu और डिस्क गतिविधि दोनों उच्च हैं, तो% iostat अपेक्षा से कम रहेगा । दूसरी तरफ, काफी कम डिस्क उपयोग स्तरों पर शुरू होने पर,% iostat अपेक्षाकृत अधिक हो सकता है यदि सीपीयू निष्क्रिय है। यह कहा जा रहा है कि नमक के एक दाने के साथ भी इंतजार करने की जरूरत है। यदि बहुत सीक्वेंशियल रीड / राइट हो रहा है, तो यह आंकड़ा को कम मूल्य पर तिरछा कर देगा, और आपके 18 ~ 20ms का नियम इन शर्तों के तहत उपयोगी नहीं होगा, क्योंकि लिखे जा रहे अधिकांश विराम अनुक्रमिक डेटा होंगे और इनकी सर्विस की जाएगी। डिस्क द्वारा बहुत तेज़ी से, जबकि अन्य यादृच्छिक io इंतज़ार कर रहे होंगे, क्योंकि डिस्क से थ्रूपुट को ऑप्टिमाइज़ करने के लिए डिस्क के लिए बनाए गए नेटिव-कमांड-क्यूइंग (NCQ) सिस्टम डिस्क के अनुक्रम का चयन करने का अनुरोध करते हैं।


धन्यवाद @ beowulfNode42 क्या यह प्राथमिक मीट्रिक है जिसका उपयोग आप "खराब डिस्क" को देखने के लिए करते हैं? नया अवशेष, i / o प्रतीक्षा और डिस्क उपयोग (फ़ोकस एंड राइट) प्रतिशत पर ध्यान केंद्रित करता है ... यह मुझे आश्चर्यचकित करता है कि क्या मैं गलत मीट्रिक का पीछा कर रहा हूं, या यदि वे बस कम उपयोगी जानकारी की रिपोर्ट कर रहे हैं ....
रसेल क्रिस्टोफर

@RussellChristopher अन्य आँकड़े आवश्यक जानकारी प्रदान करते हैं जिसमें प्रतीक्षा जानकारी की व्याख्या करना है। उदाहरण के लिए, वहाँ बहुत सारे आईओपीएस (आर / और डब्ल्यू / एस), एमबी / एस के बहुत सारे हैं, एवीजी अनुरोध आकार (एवीग्रक-एसज़) बड़े या छोटे हैं, और एवी क्यू आकार का क्या है (एवीग्क्व-एसज़)। हां, सीपीयू से संबंधित मेट्रिक्स% iowait,% उपयोगकर्ता,% प्रणाली आदि के साथ यह देखने के लिए कि डिस्क सीपीयू को धीमा कर रही है या इसके विपरीत।
बेवोल्फनोडे42
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.