Проверяет понимание значения столбца load average в утилите top и его интерпретации для оценки нагрузки на систему.
Load average — это метрика, отображаемая в утилите top (а также в uptime и w), которая показывает среднее количество процессов, находящихся в состоянии выполнения или ожидания (например, ожидания ввода-вывода) за последние 1, 5 и 15 минут. В отличие от простого процента загрузки CPU, load average учитывает не только активные процессы, но и те, что стоят в очереди на выполнение, что даёт более полную картину загруженности системы.
Для одноядерной системы load average 1.0 означает, что процессор полностью занят, но очередь не растёт. Значение 2.0 — уже перегрузка: процессы ждут своей очереди. Для многоядерных систем нужно сравнивать load average с количеством ядер: если у вас 4 ядра, то load average 4.0 — это нормальная полная загрузка, а 8.0 — серьёзная перегрузка. Однако важно помнить, что load average включает и процессы, ожидающие ввода-вывода (например, диск или сеть), поэтому высокое значение может указывать на проблемы с диском, а не только с CPU.
Допустим, вы запустили top и видите:
top - 14:23:45 up 10 days, 2:15, 1 user, load average: 3.20, 2.80, 2.50Если у сервера 4 ядра, то load average 3.20 за последнюю минуту — это высокая, но не критичная нагрузка. Если бы было 8.0, это означало бы, что процессы стоят в очереди и система перегружена. Для проверки можно использовать nproc для определения числа ядер.
Load average — полезный индикатор для быстрой оценки состояния системы, но его нужно интерпретировать в контексте количества ядер и возможных узких мест (диск, сеть). Используйте его вместе с другими метриками (например, %CPU, %MEM) для точной диагностики.