На этот вопрос уже есть ответ здесь:
У меня есть сервер, на котором работает несколько сотен процессов одновременно, большинство из них простаивают, это своего рода веб-сканер, который по разным причинам спит между запросами.
В результате моя средняя загрузка обычно выглядит примерно так: 21,64, 27,05, 29.16
Это очень-очень высоко, правда? Но все идет гладко!
И мой ЦП потребляет что-то вроде (вывод mpstat 60 1):
11:07:06 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
11:08:06 AM all 34.82 0.00 4.16 10.70 0.00 0.31 0.00 0.00 0.00 50.01
Average: all 34.82 0.00 4.16 10.70 0.00 0.31 0.00 0.00 0.00 50.01
Итак, поскольку я даже не использую 100% ЦП, я чувствую, что у меня нет причин для беспокойства, или я чего-то не хватает? Когда nginx обслуживает запросы, происходит небольшая задержка, но это ожидается, учитывая большое количество запросов в очереди. Но я где-то читал, что средняя загрузка выше 1 является причиной для тревоги, и я, честно говоря, не понимаю, почему это так.
Так что посоветуйте, пожалуйста.
Спасибо
၎င်းသည်အမှန်တကယ်နှေးကွေးသော application နှင့်အမှန်တကယ်ကိုက်ညီပါကသာလျှင်စိုးရိမ်ပူပန်ပါ။ အနည်းငယ် ပို၍ တိကျစွာပြောရလျှင် load ပျှမ်းမျှသည် run နေသောသို့မဟုတ်စောင့်ဆိုင်းနေသောလုပ်ငန်းစဉ်အရေအတွက်နှင့်သက်ဆိုင်သည်။ ဤသည်အများကြီးပို 1 ဖြစ်နိုင်သည်ရုံဒဏ်ငွေလုပ်ဆောင်နိုင်ပါတယ်။ ၂၄ cores ပါ ၀ င်သော host တစ်ခုတွင် load ပျမ်းမျှ ၂၁ လုံး CPU ရှိလိမ့်မည်၊ ၎င်းသည် ၁၀၀% လည်ပတ်နေလျှင်ပင်ဖြစ်သည်။ အကြီးအကျယ်အလုပ်များသောအိမ်ရှင်များကိုမတွေ့ရသူများထံမှအကြံဥာဏ် ၁ သည်များစွာသောအကြံပေးချက်များဖြစ်သည်။ iowait သည်လျှောက်လွှာအတွက်နှောင့်နှေးခြင်းဖြစ်သော်လည်း (ခေတ်သစ်သိုလှောင်မှုစနစ်များတွင်) CPU သည်အခြားအရာများကိုထိထိရောက်ရောက်လုပ်ရန်လွတ်လပ်စွာပြုလုပ်နိုင်သည်။ သင့်လျှောက်လွှာ၏တုံ့ပြန်မှုအချိန်။ အရာဝတ္ထုများကိုအမှန်တကယ်ဖော်ပြသည့်အရာသည်နှေးကွေးနေသည်ကိုကြည့်ရန်သင်၏အခြားစောင့်ကြည့်စစ်ဆေးခြင်းနှင့်ဆက်စပ်ပါ။
A нагрузка в среднем выше, чем 1 относится к 1 ядру/резьбе. Таким образом, правило заключается в том, что средняя нагрузка, равная нагрузке на ядро/поток, является нормальной, скорее всего, приведет к постановке процессов в очередь и замедлению работы.
iowait iowait, например, также учитывается в среднем значении нагрузки, и один процесс, выполняющий тяжелый ввод-вывод, может сдвинуть среднее значение нагрузки более чем на 1, не используя второе ядро/поток.
.
В то время как этот тяжелый процесс ввода-вывода, скорее всего, будет иметь плохое время отклика, второй процесс может быть очень отзывчивым при высокой нагрузке. В зависимости от ресурсов, к которым процесс обращается
Вы должны собрать больше информации, чтобы получить лучший смысл. Также в вашем сообщении не хватает таких деталей, как тип сервера, какой дистрибутив linux, сколько у вас процессоров/ядер? Вы можете сделать mpstat -P ALL, чтобы получить информацию о каждом процессоре. Достаточно ли у вас памяти? диска? настройки файловой системы?
Вероятно, вы можете определить, какая операция в nginx вызывает высокую нагрузку, посмотрев на вывод lsof |grep nginx.
Есть ли у вас какое-нибудь предупреждение/мониторинг? Таким образом, вы можете быть уведомлены, когда увидите высокое предупреждение. Вы регистрируете загрузку сервера (через sar)? Можете ли вы определить какие-либо тренды в течение дня/недели? Какие процессы выполняются?
Я также вижу цифры iowait около 10 в вашем mpstat выходе, что означает, что ваша система ждет операций ввода/вывода. Тогда вам нужно проверить настройки диска/файловой системы и оптимизировать их при необходимости.
В основном, высокая нагрузка не обязательно означает плохое - это может означать только то, что ваш сервер и службы будут использоваться. Или это означает, что завтра может случиться что-то плохое. Однако, необходимо лучше понять поведение системы, а не просто говорить, что все работает гладко. Так что соберите больше данных, отслеживайте, читайте, исследуйте и наблюдайте в течение нескольких дней, а затем это может помочь вам получить больше информации. Надеюсь, это поможет.