আমরা একটি অদ্ভুত আচরণে চলে আসছি যেখানে আমরা উচ্চ সিপিইউ ব্যবহার দেখতে পাই তবে বেশ লোড গড়।
আমাদের মনিটরিং সিস্টেম থেকে নিম্নলিখিত গ্রাফগুলি দ্বারা আচরণটি সর্বোত্তমভাবে ফুটিয়ে তোলা হয়েছে।
প্রায় 11:57 এ সিপিইউ ব্যবহার 25% থেকে 75% এ চলে যায়। লোড গড় উল্লেখযোগ্যভাবে পরিবর্তন করা হয় না।
আমরা প্রতিটি 2 টি হাইপার থ্রেড সহ 12 টি কোর দিয়ে সার্ভারগুলি পরিচালনা করি। ওএস এটিকে 24 সিপিইউ হিসাবে দেখে।
সিপিইউ ব্যবহারের ডেটা /usr/bin/mpstat 60 1
প্রতিটি মিনিট চালিয়ে সংগ্রহ করা হয় । all
সারি এবং %usr
কলামের ডেটা উপরের চার্টে দেখানো হয়েছে। আমি নির্দিষ্ট এই CPU- র তথ্য প্রতি গড়, প্রদর্শন করে থাকি না "স্তুপীকৃত" ব্যবহার। চার্টে আমরা 75% ব্যবহার দেখতে পাই আমরা প্রায় 2000% "স্ট্যাকড" সিপিইউ ব্যবহার করতে দেখায় এমন একটি প্রক্রিয়া দেখি top
।
/proc/loadavg
প্রতি মিনিট থেকে লোড গড় চিত্রটি নেওয়া হয় ।
uname -a
দেয়:
Linux ab04 2.6.32-279.el6.x86_64 #1 SMP Wed Jun 13 18:24:36 EDT 2012 x86_64 x86_64 x86_64 GNU/Linux
লিনাক্স ডিস্ট Red Hat Enterprise Linux Server release 6.3 (Santiago)
আমরা মেশিনগুলিতে মোটামুটি ভারী চাপের মধ্যে বেশ কয়েকটি জাভা ওয়েব অ্যাপ্লিকেশন পরিচালনা করি, প্রতি মেশিনে 100 টি অনুরোধ / গুলি ভাবেন think
যদি আমি সিপিইউ ব্যবহারের ডেটা সঠিকভাবে ব্যাখ্যা করি, যখন আমাদের 75% সিপিইউ ব্যবহার হয় তার অর্থ আমাদের সিপিইউগুলি গড়ে 75% সময় একটি প্রক্রিয়া সম্পাদন করে। তবে, যদি আমাদের সিপিইউগুলি 75 75% সময় ব্যস্ত থাকে, তবে কি আমাদের বেশি লোডের গড়টি দেখা উচিত নয়? আমাদের কেবল রান কাতারে 2-4 টি কাজ থাকা অবস্থায় সিপিইউগুলি কীভাবে 75% ব্যস্ত থাকতে পারে?
আমরা কি আমাদের ডেটা সঠিকভাবে ব্যাখ্যা করছি? এই আচরণের কারণ কী হতে পারে?