আমি কীভাবে বলতে পারি যে কী প্রসেসগুলি উচ্চ-সিপিইউ ব্যবহার না করা হলে উচ্চ বোঝা সৃষ্টি করছে?


12

কখনও কখনও আমার সার্ভারগুলি "শীর্ষ" প্রোগ্রামে একটি উচ্চ লোড গড় দেখায় (যেমন 4-কোর মেশিনে লোড 10 ডলার), তবে আসল সিপিইউ ব্যবহার বিশেষত বেশি নয়।

আমি ধরে নিই যে বিষয়টি অনেকগুলি I / O- নিবিড় কাজ চলছে। এই চাকরিগুলি বোঝার কারণ হিসাবে চিহ্নিত করার কোন সহজ উপায় আছে, যদি তাদের "% সিপিইউ" মানগুলি শীর্ষে না থাকে?


topকমান্ডটি চালানোর সময় আপনি যে সংক্ষিপ্তসারটি দেখতে পাচ্ছেন তা পেস্ট করতে পারবেন ?
mfriedman

উত্তর:


7

iostatযে পরিসংখ্যান রিপোর্ট করতে পারেন। সাধারণত প্যাকেজ সিস্টেমে আপনার ডিস্ট্রোতে অন্তর্ভুক্ত থাকে।

dstat এছাড়াও চেহারা মূল্যবান হতে পারে, এটি একটি আধুনিক প্রতিস্থাপন।


+1 কারণ আমার উত্তর iostatহতে চলেছে ।
আর্নি

4

যদি আপনার কার্নেলে আইও অ্যাকাউন্টিং থাকে তবে আপনি iotopসেই জাতীয় তথ্য দেওয়ার জন্য ব্যবহার করতে পারেন । এছাড়াও, সংগৃহীত মত পর্যবেক্ষণ সরঞ্জামগুলি ডেটা রেকর্ড করতে এবং প্রতিবেদন করতে পারে।


4

উচ্চ লোডের কারণ কী তা খুঁজে পেতে আপনি কয়েকটি জিনিস পরীক্ষা করতে পারেন।

  • vmstat -w আপনাকে ovierwiem দেখাবে (প্রক্রিয়া, অদলবদল, মেমি, সিপিইউ, আইও, সিস্টেম)
  • pmstat -P ALL প্রতি সিপিইউ কোর আপনাকে পরিসংখ্যান সরবরাহ করবে (% iowait সহ)
  • iostat -x উচ্চ% ব্যবহার বা দীর্ঘ প্রতীক্ষা বা বড় গড় সারির আকারের সন্ধান করুন
    • সঙ্গে আরও গভীর খনন iotop
  • ps -ax স্থিতিশীল ডিটির জন্য অনুসন্ধান করুন যা নিরবচ্ছিন্ন ঘুম (সাধারণত আইও) হয়, তারা আরও একবার ডি অবস্থায় রয়েছে কিনা তা একবার পরীক্ষা করে চালান
    • স্ট্রেস দিয়ে আরও গভীর খনন করুন
    • lsof এবং netstat সহ সেই প্রক্রিয়াগুলির ফাইল এবং সংযোগগুলি পরীক্ষা করুন
  • sar / sysstat - সেই সরঞ্জামটি দিয়ে আপনি কেবল "এখন" পরিসংখ্যানগুলিই অন্বেষণ করতে পারবেন তবে মধ্যরাতে ইয়েস্টার্ডে কী ঘটছে তাও পরীক্ষা করতে পারবেন
    • sar -b - সামগ্রিক আইও কার্যক্রম
    • sar -d - স্বতন্ত্র ব্লক ডিভাইস io ক্রিয়াকলাপ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.