همه

CPU Load Average در سرور لینوکس چیست ؟ دلیل اهمیت بررسی آن

CPU Load Average در سرور لینوکس به چه معناست؟ برای شروع توضیح در مورد این مفهوم، این مثال را در نظر بگیرید. تصور کنید شما به عنوان یک مدیرعامل کارمندی دارید که باید چند وظیفه‌ی مختلف را به سرانجام برساند. مطمئنا این موضوع بر کیفیت امور انجام شده تاثیر می‌گذارد. اگر از کیفیت این موضوع نیز چشم‌پوشی کنیم، سرعت رسیدگی به اموری که برعهده‌ی آن فرد است نیز کاهش می‌یابد. این کاهش سرعت می‌تواند بر روی عملکرد کل تیم شما نیز تاثیر بگذارد. حال این موضوع را برای قطعه‌ای الکترونیکی در نظر بگیرید. CPU Load Average در سرور لینوکس نیز چنین مفهومی دارد.

در همین ابتدا لازم می‌دانیم عنوان کنیم که اگر قصد خرید سرور لینوکس ارزان دارید می‌توانید از طریق ابرآراز اقدام کنید. ابرآراز با استفاده از سریع‌ترین و پرقدرت‌ترین سخت‌افزارهای موجود، بهترین کیفیت را در کنار مناسب‌ترین قیمت در اختیار شما قرار می‌دهد.

لینوکس چیست ؟

بیایید در ابتدا توضیح مختصری از لینوکس را با هم بررسی کنیم. لینوکس چیست ؟ عبارت Linux از سال ۱۹۸۴ شناخته شده است. اگر بخواهیم از لحاظ فنی آن را شرح دهیم، میتوان چنین گفت که به تنهایی به عنوان هسته سیستم عامل معرفی می گردد. اما از طرفی برخی نیز می گویند که لینوکس که با نماد پنگوئن شناخته می شود، هم نوعی سیستم عامل مانند ویندوز است. و دسته سوم هم که کلا اعتقاد بر این دارند Linux نام دیگر Ubunto است و این دو یکی هستند.

صحبت بیشتر در مورد مفهوم لینوکس چیست در این مقاله نمی‌گنجد، اما از اهمیت بالایی برخوردار است. به همین دلیل توصیه می‌کنیم ابتدا نگاهی به مقاله‌ی لینوکس چیست بیاندازید و پس از آن این مقاله را تا انتها دنبال کنید. 

CPU چیست ؟

در اولین قدم و پیش از اینکه دریابید که CPU Load Average در سرور لینوکس به چه معناست باید دریابید که CPU چیست. CPU پردازشگر مرکزی سرور است که وظیفه دارد فرایندهای محاسباتی را به بهترین نحو انجام دهد. با محاسبه این پارامتر، می‌توان فهمید که سرعت کلی پردازش در سرور چگونه است. در این مقاله ما به شما آموزش می‌دهیم که چگونه می‌توان این پارامتر را به دست آورد و بهترین حالت آن چه چیزی است. برای آشنایی بیشتر با CPU و نقش حیاتی که در سیستم شما دارد، پیشنهاد می‌کنیم حتما مقاله CPU چیست را مطالعه کنید.

CPU چیست

System Load چیست؟

درواقع، System Load فرآیندهای محاسباتی هستند که در داخل هسته و کرنل سرور لینوکسی انجام می‌شوند. نکته‌ای که باید رد نظر داشته باشید این است که این اصطلاح تنها مربوط به لینوکس نیست و تمامی سیستم عامل‌های مبتنی بر یونیکس را شامل می‌شود. 

همانطور که قابل حدس است، برخی از این پردازش‌های درخواستی، سبک بوده و برخی دیگر ممکن است فشار زیادی به سیستم و دستگاه شما وارد کنند. حال برای اینکه بتوانید میزان بار وارده از هر پردازش را محاسبه کنید باید از فرآیندهای محاسباتی و System Load استفاده کنید.

شاید برایتان سوال پیش بیاید که چرا این میانگین از اهمیت بالایی برخوردار است؟ به طورکلی، نوسانات زیادی در تعداد System Load ها وجود دارد. این بدین معناست که ممکن است سرور در یک ثانیه درگیر ده‌ها فرآیند مختلف باشد و چند ثانیه کاملا خالی و بیکار. در اینجاست که اهمیت مقدار میانگین مشخص می‌شود.

System Load چیست

منظور از CPU Load Average در سرور لینوکس چیست ؟

اگر بخواهیم به ساده‌ترین زبان در مورد مفهوم CPU Load Average در سرور لینوکس توضیح دهیم، می‌توانیم از این تعریف استفاده کنیم:

به میانگین تمام System Loadهای یک سرور لینوکس در یک بازه زمانی مشخص، CPU Load Average گفته می‌شود.

همانطور که بالاتر نیز توضیح دادیم، CPU به عنوان پردازشگر سیستم محسوب می‌شود. این پردازشگر، مسئولیت رسیدگی بر فرآیندهای پردازشی را برعهده دارد و به همین دلیل است که Load Average نیز به این پردازشگر مربوط می‌شود. برای دستیابی به Load Average یک سرور لینوکسی باید از دستور  Uptime یا Top استفاده کنید. پس از آن، پاسخی در قالب 3 عدد متوالی به شما نمایش داده می‌شود؛ چیزی مانند اعداد زیر:

Load average: 1.50, 0.7, 2.0

اعداد نمایش داده شده ماینگین را در بازه‌های زمانی مختلفی نشان می‌دهند:

  • عدد اول میانگین را در بازه‌ی زمانی یک دقیقه
  • عدد دوم میانگین را در بازه زمانی ۵ دقیقه
  • عدد سوم میانگین را در بازه زمانی ۱۵ دقیقه

نکته‌ای که باید در مورد این اعداد بدانید این است که هرچه اعداد کوچکتر باشند، سرور شما هم سریع‌تر است. دلیل این امر این است که فرآیندهای شما نیز سریع‌تر انجام می‌شوند.

برای بررسی CPU Load Average در سرور لینوکس تهداد هسته اهمیت دارد یا تعداد CPU ؟

پیش از اینکه به بررسی مقادیر این پارامتر بپردازیم، لازم است تا ابتدا بتوانید به این سوال پاسخ دهید:

تعداد هسته یا تعداد CPU؟ کدام یک از اهمیت بیشتری برخوردار است؟ در پاسخ به این سوال باید عنوان کنیم که هر هسته در CPU، تنها می‌تواند به یک فرآیند در یک زمان مشخص و واحد رسیدگی کند. درنتیجه اگر تعداد هسته‌های سیستم 8 عدد باشد، سیستم شما می‌تواند به صورت همزمان 8 درخواست را مورد بررسی قرار دهد. 

اگر دقت کنید، متوجه می‌شوید که در اینجا صحبتی از CPU نشد. این موضوع نشان می‌دهد که یک دستگاه 4 هسته‌ای با یک CPU توانایی بیشتری نسبت به دستگاهی با یک هسته و 2 CPU دارد. 

نکته: اگر با استفاده از مجازی سازی یک هسته را به چند هسته تسیم کردید، هرکدام از این هسته‌ها می‌توانند مسئولیت یک تسک را به صورت جداگانه برعهده داشته باشند. 

این توضیحات نشان می‌دهند که مجموع هسته‌های پردازشگر در یک سیستم، از اهمیت بالاتری نسبت به تعداد CPUها برخوردار است.

اطلاع از تعداد هسته‌های موجود در سرور

برای اطلاع از تعداد هسته‌های موجود در سرور، می‌توانید از دستور زیر کمک بگیرید:

cat /proc/cpuinfo

همانطور که در قسمت‌های بالایی عنوان کردیم، پس از اینکه دستورات لازم برای دریافت CPU Load Average در سرور لینوکس را وارد کردید، سه خروجی برای شما به نمایش درمی‌آید. پس از آن نیز توضیح دادیم که این 3 عدد خروجی، میانگین را در 3 بازه‌ی زمانی مختلف نشان می‌دهند.

بررسی خروجی‌های CPU Load Average در سرور لینوکس

 حال تصور کنید که خروجی شما چیزی شبیه به اعداد زیر است:

Load average: 0.09, 0.05, 0.01

بیایید این اعداد را در زمانی که تنها یک پردازشگر تک هسته‌ای در سرور دارید، بررسی کنیم. برای درک بهتر این موضوع تصور کنید که برای خرید به یک فروشگاه بزرگ مراجعه کرده‌اید. در این فروشگاه تنها یک صندوق‌دار وجود دارد. در نتیجه تمامی مشتریان باید در صفی طولانی و مدت زمان زیادی منتظر باشند تا صندوق‌دار کار خود را انجام دهد. در این حالت صندوق‌دار از تمام ظرفیت خود برای پردازش حساب‌ها استفاده می‌کند.

این مثال دقیقا مانند اتفاقی است که در یک پردازشگر تک هسته‌ای رخ می‌دهد. در این شرایط پردازشگر با نهایت توان در حال محاسبه‌ی کارهاست. عددهای خروجی شما اگر کمتر از ۱.۰۰ باشند به این منظور است که تنها بخشی از ظرفیت پردازشگر در حال استفاده است. مثلا اگر با عدد ۰.۵ مواجه شدید، یعنی تنها 50 درصد هسته سیستم شما درگیر است. اگر بخواهیم با مثال توضیح دهیم، یعنی صندوق‌دار 50٪ زمان خود را استراحت می‌کند. 

اگر با اعدادی بزرگ‌تر از ۱.۰۰ مواجه شدید، باید سریعا به حل مشکل اقدام کنید. این عدد نشان می‌دهد که تعداد فرآیندها، بیشتر از توان رسیدگی هسته بوده و منجر به کندی سرور می‌شود. برای درک بهتر، صندوق‌دار پرمشغله‌ی فروشگاه را به خاطر بیاورید. صندوق‌دار با تمام توان درحال کار است و درعین حال صفی طولانی برای حساب کردن خریدشان منتظر هستند.

بررسی خروجی‌های CPU Load Average در سرور لینوکس

تاثیر پردازشگر 4 هسته‌ای در CPU Load Average در سرور لینوکس

اگر پردازشگر ما چهار هسته‌ای باشد، چه اتفاقی می‌افتد؟ در این حالت شما به جای یک صندوق‌دار، 4 صندوق‌دار مختلف دارید. پس اگر با عدد ۴.۰۰ مواجه شدید، یعنی هر 4 پردازشگر شما از 100 درصد ظرفیت خود استفاده می‌کنند. یعنی هر 4 پردازشگر در حال خدمت رسانی هستند و درعین حال، صفی در مقابل هر 4 باجه نیز تشکیل شده است. 

با وجود داشتن 4 هسته اگر با اعدادی کوچکتر از ۴.۰۰ روبه‌رو شدید، یعنی هسته‌ها کار سبک‌تری را برعهده دارند. در نهایت اینکه اعداد کوچک‌تر به معنای سرعت بالای سرور و اعداد بزرگ‌تر یعنی تحت فشار بودن و کندی سرور.

اعداد قابل اهمیت در CPU Load Average در سرور لینوکس کدامند؟

کدام اعداد CPU Load Average در سرور لینوکس اهمیت بیشتری دارند؟ مسلما اعداد دوم و سوم. چرا؟ همانطور که در ابتدای مقاله عنوان کردیم، این دو عدد نشان‌دهنده‌ی میانگین بار CPU در 5 و 15 دقیقه‌ی آخر را به شما نشان می‌دهند. در نتیجه تصویر کلی‌تری از بار سرور در اختیار شما قرار می‌دهند.

نتیجه‌گیری

بررسی و مانیتورینگ دائم CPU Load Average در سرور لینوکس یک ضرورت حیاتی به حساب می‌آید. با این کار شما هم می‌توانید مشکلات کنونی را برطرف کنید و هم احتمال وقوع مشکلات بعدی را به حداقل برسانید. 

این نکته را همیشه به خاطر داشته باشید که هر هسته از پردازشگرهای سرور لینوکس شما تنها می‌توانند یک فرآیند را در آن واحد پردازش کنند. در نتیجه زیاد شدن تسک‌ها و وظایف، نتیجه‌ای جز کندی سرور را به همراه نخواهد داشت. خوشحال می‌شویم اگر نکته‌ای در مورد CPU Load Average در سرور لینوکس وجود دارد، آن را با ما در قسمت کامنت به اشتراک بگذارید. علاوه برآن، شما با عضویت در شبکه‌های اجتماعی ابرآراز ، می‌توانید در جریان تازه‌ترین و داغ‌ترین مباحث تکنولوژی قرار بگیرید. 

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا