मेरी एक परियोजना के लिए, मुझे प्रोग्रामेटिक रूप से संसाधन (CPU, I / O और डिस्क-स्पेस) का उपयोग करने की आवश्यकता है।
वर्तमान में मैं शेल कमांड ( iostat
) चला रहा हूं और उन परिणामों को पार्स कर रहा हूं जो डिस्क-स्पेस स्टेट के लिए अपेक्षाकृत अच्छी तरह से काम करता है।
दूसरी ओर सीपीयू और आई / ओ स्टेट के लिए, मुझे एक समस्या है।
परीक्षण करके iostat
और top
पर आदेश Mac OSX 10.9
और Centos 6.5
मुद्दा यह है कि बहुत पहले नतीजा यह है कि छपा है स्थिर है।
"स्थिर" से मेरा मतलब है निरंतर। यह हमेशा एक ही संख्या है चाहे आप कितनी बार भी कमांड को चलाएं। ऐसा लगता है कि मूल्य फिर से जूते के बीच बदल जाता है।
यह केवल पहले मूल्य के लिए मामला है, अनुवर्ती मान ठीक हैं और संभव सिस्टम संसाधन उपयोग को दर्शाते हैं।
अब CentOS बॉक्स मैं दौड़ाया गया परीक्षण एक VM है, लेकिन OSX एक सामान्य मैकबुक प्रो है।
तो मेरे तीन प्रश्न निम्नलिखित हैं:
पर स्थिरांक - कैसे आ कि आंकड़े स्थिर हैं
iostat
औरtop
और सीपीयू के लिए आई / ओ उपयोग?मैं इसे कैसे ठीक करूं ?
यदि यह तय नहीं किया जा सकता है या एक इच्छित व्यवहार है, तो क्या ऐसे विकल्प हैं जो MacOSX और CentOS दोनों पर काम करते हैं?
यहाँ के नमूने लॉग हैं:
एक
iostat
ताज़ा बिना CentOS पर एक साधारण समय :Linux 2.6.32-431.5.1.el6.x86_64 08/04/2014 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle 24.64 0.00 0.57 0.10 0.00 74.70
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn sda 1.44 0.22 26.26 656556 76917802 sdb 3.89 0.17 61.83 492714 181116136 dm-0 3.29 0.22 26.26 647474 76917776 dm-1 0.00 0.00 0.00 2416 0 dm-2 6.76 0.17 61.83 491914 181116136
iostat 1
CentOS पर एक सरल लेकिन इस बार एक1 second
ताज़ा आवृत्ति के साथ:
Linux 2.6.32-431.5.1.el6.x86_64 08/04/2014 _x86_64_ (2 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
24.64 0.00 0.57 0.10 0.00 74.70
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 1.44 0.22 26.26 656556 76918018
sdb 3.89 0.17 61.83 492714 181118872
dm-0 3.29 0.22 26.26 647474 76917992
dm-1 0.00 0.00 0.00 2416 0
dm-2 6.76 0.17 61.83 491914 181118872
avg-cpu: %user %nice %system %iowait %steal %idle
0.51 0.00 0.00 0.00 0.00 99.49
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 7.00 0.00 56.00 0 56
sdb 0.00 0.00 0.00 0 0
dm-0 7.00 0.00 56.00 0 56
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
1.00 0.00 1.50 0.50 0.00 97.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 3.00 0.00 32.00 0 32
sdb 8.00 0.00 176.00 0 176
dm-0 4.00 0.00 32.00 0 32
dm-1 0.00 0.00 0.00 0 0
dm-2 14.00 0.00 176.00 0 176
avg-cpu: %user %nice %system %iowait %steal %idle
0.51 0.00 0.00 0.00 0.00 99.49
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
1.00 0.00 1.00 0.00 0.00 98.01
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.50 0.00 0.50 0.00 0.00 99.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.50 0.00 0.50 0.00 0.00 99.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.00 0.00 0.51 0.00 0.00 99.49
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 0.00 0.00 0.00 0 0
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 0.00 0.00 0.00 0 0
avg-cpu: %user %nice %system %iowait %steal %idle
0.50 0.00 0.50 0.00 0.00 99.00
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 2.00 0.00 24.00 0 24
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 3.00 0.00 24.00 0 24
avg-cpu: %user %nice %system %iowait %steal %idle
0.51 0.00 0.51 0.00 0.00 98.99
Device: tps Blk_read/s Blk_wrtn/s Blk_read Blk_wrtn
sda 0.00 0.00 0.00 0 0
sdb 4.00 0.00 80.00 0 80
dm-0 0.00 0.00 0.00 0 0
dm-1 0.00 0.00 0.00 0 0
dm-2 7.00 0.00 80.00 0 80
दोनों "प्रयोग" कुछ सेकंड के अंतराल के भीतर किए गए थे।
जैसा कि आप देख सकते हैं, सीपीयू उपयोग के लिए, %user
हमेशा पहले मूल्य पर 24.64%
और %system
पर है 0.57
।
/proc/*
OSX तक नहीं पहुंच सकते । मुझे कोई आपत्ति नहीं है। क्या आप डिस्क I / O के समान समाधान के बारे में जानते हैं?