نحوه ی کارکرد Load average در لینوکس

در لینوکس مقوله ای وجود دارد تحت عنوان Load Average در واقع Load average سه عدد می باشد که قابل مشاهده در دستورهای uptime و top می باشد. این سه عدد به شکل زیر می باشند:

load average: 0.09, 0.05, 0.01
این سه عدد نشان می دهد چه میزان CPU در حال استفاده در پروسه های زمانی مختلف به صورت میانگین می باشد (یک ، پنج و پانزده دقیقه). هرچه این عدد کوچیکتر باشد بهتر بوده و با افزایش آن مصرف CPU زیاد شده و نگران کننده خواهد بود.

تصور کنید پلی (CPU) وجود دارد که ماشین ها (پروسس ها) از روی آن رد می شوند. 
 
0.00 به معنای آن است که بر روی پل هیچ ماشینی رد نمی شود.
بین 0.00 تا 1.00 به معنای آن است که صفی وجود نداشته و اگر ماشین جدید وارد شود مستقیم از روی آن رد می شود.
1.00 به معنای آن است که پل به حد گنجانیش خود رسیده و همه چیز خوب است اما اگر یک مقدار ترافیک سنگین تر شود، ماشین ها در صف باقی می مانند.
بیشتر از 1.00 به معنای آن است که چندین ماشین در صف قرار گرفته اند و منتظر هستند تا نوبت رد شدن آن ها برسد.
 
تصویر زیر دقیق تر این مورد را تشریح می دهد:
 

حالا باید بررسی کرد بیشتر از 1.00 چه میزان اضافه تر می باشد. در واقع 2.00 به معنای آن است که ظرفیت پل که تعداد مشخصی ماشین بوده کامل پل شده و اندازه کل ظرفیت پل یک صف از پروسه ها ایجاد شده است و این مقدار برای عداد بالاتر مثل 3.00 و 4.00‌ نیز صدق می کند.
اگر Load average به مقداری بالای 1.00 برسد یعنی سرور با مشکل مواجه شده است و سریعا باید رسیدگی شود اما مدیران IT معمولا خط قرمزی کمتر از 1.00 را در نظر میگیرند زیرا اگر Load average به 1.00 رسیده باشد کار از کار گذشته و سرور با مشکل مواجه شده است. عموما خط قرمز را بر روی 0.70 تنظیم می نمایند.
 
حال شاید شما مطرح نمایید که در سرور شما Load average بالاتر از 1.00 وجود داشته و مشکلی ایجاد نمی شود. در واقع شما از سرورهای چند هسته استفاده می کنید. در سرورهای چنده هسته مطابق با تعداد هسته های در دسترس میزان ظرفیت CPU افزایش می یابد. در واقع برای یک سرور دو هسته میزان ظرفیت پروسه ها 2.00 است و برای یک سرور چهار هسته این مقدار برابر با 4.00 می باشد.